From: Bryan C. Mills Date: Wed, 25 Jul 2018 18:55:42 +0000 (-0400) Subject: cmd/go/internal/modload: inline doImport into doPkg X-Git-Tag: go1.11beta3~56 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=682faae2e32b8b39ff812e8d1d31591125d31f3f;p=gostls13.git cmd/go/internal/modload: inline doImport into doPkg doImport is itself a thin wrapper around Import, and doPkg is its only call site. I'm having trouble following what doPkg is doing due to the indirection, so I'm removing it. Change-Id: I6167be68e869a36010a56a5869df50b1145ac813 Reviewed-on: https://go-review.googlesource.com/125837 Run-TryBot: Bryan C. Mills TryBot-Result: Gobot Gobot Reviewed-by: Russ Cox --- diff --git a/src/cmd/go/internal/modload/load.go b/src/cmd/go/internal/modload/load.go index dd8a60eb09..36dc0deee7 100644 --- a/src/cmd/go/internal/modload/load.go +++ b/src/cmd/go/internal/modload/load.go @@ -494,7 +494,17 @@ func (ld *loader) doPkg(item interface{}) { pkg.mod = pkg.testOf.mod imports = pkg.testOf.testImports } else { - pkg.mod, pkg.dir, pkg.err = ld.doImport(pkg.path) + if strings.Contains(pkg.path, "@") { + // Leave for error during load. + return + } + if build.IsLocalImport(pkg.path) { + // Leave for error during load. + // (Module mode does not allow local imports.) + return + } + + pkg.mod, pkg.dir, pkg.err = Import(pkg.path) if pkg.dir == "" { return } @@ -526,26 +536,6 @@ func (ld *loader) doPkg(item interface{}) { } } -// doImport finds the directory holding source code for the given import path. -// It returns the module containing the package (if any), -// the directory containing the package (if any), -// and any error encountered. -// Not all packages have modules: the ones in the standard library do not. -// Not all packages have directories: "unsafe" and "C" do not. -func (ld *loader) doImport(path string) (mod module.Version, dir string, err error) { - if strings.Contains(path, "@") { - // Leave for error during load. - return module.Version{}, "", nil - } - if build.IsLocalImport(path) { - // Leave for error during load. - // (Module mode does not allow local imports.) - return module.Version{}, "", nil - } - - return Import(path) -} - // scanDir is like imports.ScanDir but elides known magic imports from the list, // so that we do not go looking for packages that don't really exist. //