cmd/go: ignore errors from go/build for standard packages
The go/build package does not know that gccgo's standard packages don't have source, and will report an error saying that it can not find them. Work around that in the cmd/go sources, since the go/build sources don't currently have a list of standard packages. This should get a real fix in the master sources, somehow. Fixes golang/go#16701. Reviewed-on: https://go-review.googlesource.com/27052 From-SVN: r239486
This commit is contained in:
parent
2008be405c
commit
87155d4f6c
@ -1,4 +1,4 @@
|
||||
24e0c4c98e0614b1892316aca787f1c564f2d269
|
||||
affb1bf5fcd7abf05993c54313d8000b93a08d4a
|
||||
|
||||
The first line of this file holds the git revision number of the last
|
||||
merge done from the gofrontend repository.
|
||||
|
@ -763,6 +763,13 @@ var cgoSyscallExclude = map[string]bool{
|
||||
func (p *Package) load(stk *importStack, bp *build.Package, err error) *Package {
|
||||
p.copyBuild(bp)
|
||||
|
||||
// When using gccgo the go/build package will not be able to
|
||||
// find a standard package. It would be nicer to not get that
|
||||
// error, but go/build doesn't know stdpkg.
|
||||
if runtime.Compiler == "gccgo" && err != nil && p.Standard {
|
||||
err = nil
|
||||
}
|
||||
|
||||
// The localPrefix is the path we interpret ./ imports relative to.
|
||||
// Synthesized main packages sometimes override this.
|
||||
p.localPrefix = dirToImportPath(p.Dir)
|
||||
|
Loading…
Reference in New Issue
Block a user