]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/go: simplify compiler import config preparation
authorRuss Cox <rsc@golang.org>
Thu, 16 Nov 2017 19:56:12 +0000 (14:56 -0500)
committerRuss Cox <rsc@golang.org>
Thu, 16 Nov 2017 21:10:25 +0000 (21:10 +0000)
I realized this simplification was possible when writing the vet loop
(just above the code being modified here) but never circled back
to make the compiler loop match.

Change-Id: Ic2277d2a4b6d94ea4897cc3615fc1a29f2fb243c
Reviewed-on: https://go-review.googlesource.com/78395
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: David Crawshaw <crawshaw@golang.org>
src/cmd/go/internal/load/pkg.go
src/cmd/go/internal/work/exec.go

index 27684fa1f3e270897af3e4cc068c212b45eb63c8..15ef95312b086c35d4071437a5acce1c3e403b85 100644 (file)
@@ -406,9 +406,6 @@ func LoadImport(path, srcDir string, parent *Package, stk *ImportStack, importPo
                // Load package.
                // Import always returns bp != nil, even if an error occurs,
                // in order to return partial information.
-               //
-               // TODO: After Go 1, decide when to pass build.AllowBinary here.
-               // See issue 3268 for mistakes to avoid.
                buildMode := build.ImportComment
                if mode&UseVendor == 0 || path != origPath {
                        // Not vendoring, or we already found the vendored path.
index 2e8c103c507aefa3bb1b1bd8bea36c146072a71d..4d6b8a1b9077862a310a83eada4fb9ccd3cfbbfc 100644 (file)
@@ -502,23 +502,10 @@ func (b *Builder) build(a *Action) (err error) {
 
        // Prepare Go import config.
        var icfg bytes.Buffer
-       for _, a1 := range a.Deps {
-               p1 := a1.Package
-               if p1 == nil || p1.ImportPath == "" {
-                       continue
-               }
-               path := p1.ImportPath
-               i := strings.LastIndex(path, "/vendor/")
-               if i >= 0 {
-                       i += len("/vendor/")
-               } else if strings.HasPrefix(path, "vendor/") {
-                       i = len("vendor/")
-               } else {
-                       continue
-               }
-               fmt.Fprintf(&icfg, "importmap %s=%s\n", path[i:], path)
-               if vcfg != nil {
-                       vcfg.ImportMap[path[i:]] = path
+       for i, raw := range a.Package.Internal.RawImports {
+               final := a.Package.Imports[i]
+               if final != raw {
+                       fmt.Fprintf(&icfg, "importmap %s=%s\n", raw, final)
                }
        }