| env GO111MODULE=off |
| |
| # Issue 36173. Verify that "go vet" prints line numbers on load errors. |
| |
| ! go vet a/a.go |
| stderr '^package command-line-arguments\n\ta[/\\]a.go:5:3: use of internal package' |
| |
| ! go vet a/a_test.go |
| stderr '^package command-line-arguments \(test\)\n\ta[/\\]a_test.go:4:3: use of internal package' |
| |
| ! go vet a |
| stderr '^package a\n\ta[/\\]a.go:5:3: use of internal package' |
| |
| go vet b/b.go |
| ! stderr 'use of internal package' |
| |
| ! go vet b/b_test.go |
| stderr '^package command-line-arguments \(test\)\n\tb[/\\]b_test.go:4:3: use of internal package' |
| |
| ! go vet depends-on-a/depends-on-a.go |
| stderr '^package command-line-arguments\n\timports a\n\ta[/\\]a.go:5:3: use of internal package' |
| |
| ! go vet depends-on-a/depends-on-a_test.go |
| stderr '^package command-line-arguments \(test\)\n\timports a\n\ta[/\\]a.go:5:3: use of internal package a/x/internal/y not allowed' |
| |
| ! go vet depends-on-a |
| stderr '^package depends-on-a\n\timports a\n\ta[/\\]a.go:5:3: use of internal package' |
| |
| -- a/a.go -- |
| // A package with bad imports in both src and test |
| package a |
| |
| import ( |
| _ "a/x/internal/y" |
| ) |
| |
| -- a/a_test.go -- |
| package a |
| |
| import ( |
| _ "a/x/internal/y" |
| ) |
| |
| -- b/b.go -- |
| // A package with a bad import in test only |
| package b |
| |
| -- b/b_test.go -- |
| package b |
| |
| import ( |
| _ "a/x/internal/y" |
| ) |
| |
| -- depends-on-a/depends-on-a.go -- |
| // A package that depends on a package with a bad import |
| package depends |
| |
| import ( |
| _ "a" |
| ) |
| |
| -- depends-on-a/depends-on-a_test.go -- |
| package depends |
| |
| import ( |
| _ "a" |
| ) |
| |
| -- a/x/internal/y/y.go -- |
| package y |