mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
[dev.typeparams] cmd/compile: use existing findpkg algorithm when importing through types2
Change-Id: I9044de7829d22addb5bc570401508082e3f007eb Reviewed-on: https://go-review.googlesource.com/c/go/+/269057 Trust: Robert Griesemer <gri@golang.org> Run-TryBot: Robert Griesemer <gri@golang.org> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
165ceb09f9
commit
6877ee1e07
2 changed files with 23 additions and 0 deletions
|
|
@ -95,6 +95,13 @@ func parseFiles(filenames []string, allowGenerics bool) (lines uint) {
|
||||||
},
|
},
|
||||||
Importer: &gcimports{
|
Importer: &gcimports{
|
||||||
packages: make(map[string]*types2.Package),
|
packages: make(map[string]*types2.Package),
|
||||||
|
lookup: func(path string) (io.ReadCloser, error) {
|
||||||
|
file, ok := findpkg(path)
|
||||||
|
if !ok {
|
||||||
|
return nil, fmt.Errorf("can't find import: %q", path)
|
||||||
|
}
|
||||||
|
return os.Open(file)
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
conf.Check(Ctxt.Pkgpath, files, nil)
|
conf.Check(Ctxt.Pkgpath, files, nil)
|
||||||
|
|
|
||||||
16
test/typeparam/importtest.go
Normal file
16
test/typeparam/importtest.go
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
// compile -G
|
||||||
|
|
||||||
|
// Copyright 2020 The Go Authors. All rights reserved.
|
||||||
|
// Use of this source code is governed by a BSD-style
|
||||||
|
// license that can be found in the LICENSE file.
|
||||||
|
|
||||||
|
// This file checks that basic importing works in -G mode.
|
||||||
|
|
||||||
|
package p
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
import "math"
|
||||||
|
|
||||||
|
func f(x float64) {
|
||||||
|
fmt.Println(math.Sin(x))
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue