go/gcexportdata: fix test again (fix older builds)

This time, chose a package that's not changed across several builds.
Follow-up on https://go-review.googlesource.com/45151.

Change-Id: I0b487a45f8b12179b3aa495d852c0b7caa44c921
Reviewed-on: https://go-review.googlesource.com/45154
Run-TryBot: Robert Griesemer <gri@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
Robert Griesemer 2017-06-08 14:03:24 -07:00
parent add5a52034
commit b9ad13c5e8
1 changed files with 14 additions and 11 deletions

View File

@ -69,14 +69,15 @@ func ExampleRead() {
// ExampleNewImporter demonstrates usage of NewImporter to provide type
// information for dependencies when type-checking Go source code.
func ExampleNewImporter() {
const src = `package twopi
const src = `package myscanner
import "math"
// choosing a package that is unlikely to change across releases
import "text/scanner"
const TwoPi = 2 * math.Pi
const eof = scanner.EOF
`
fset := token.NewFileSet()
f, err := parser.ParseFile(fset, "twopi.go", src, 0)
f, err := parser.ParseFile(fset, "myscanner.go", src, 0)
if err != nil {
log.Fatal(err)
}
@ -84,32 +85,34 @@ const TwoPi = 2 * math.Pi
packages := make(map[string]*types.Package)
imp := gcexportdata.NewImporter(fset, packages)
conf := types.Config{Importer: imp}
pkg, err := conf.Check("twopi", fset, []*ast.File{f}, nil)
pkg, err := conf.Check("myscanner", fset, []*ast.File{f}, nil)
if err != nil {
log.Fatal(err)
}
// object from imported package
pi := packages["math"].Scope().Lookup("Pi")
pi := packages["text/scanner"].Scope().Lookup("EOF")
fmt.Printf("const %s.%s %s = %s // %s\n",
pi.Pkg().Path(),
pi.Name(),
pi.Type(),
pi.(*types.Const).Val(),
slashify(fset.Position(pi.Pos())))
slashify(fset.Position(pi.Pos())),
)
// object in source package
twopi := pkg.Scope().Lookup("TwoPi")
twopi := pkg.Scope().Lookup("eof")
fmt.Printf("const %s %s = %s // %s\n",
twopi.Name(),
twopi.Type(),
twopi.(*types.Const).Val(),
slashify(fset.Position(twopi.Pos())))
slashify(fset.Position(twopi.Pos())),
)
// Output:
//
// const math.Pi untyped float = 3.14159 // $GOROOT/src/math/const.go:13:1
// const TwoPi untyped float = 6.28319 // twopi.go:5:7
// const text/scanner.EOF untyped int = -1 // $GOROOT/src/text/scanner/scanner.go:75:1
// const eof untyped int = -1 // myscanner.go:6:7
}
func slashify(posn token.Position) token.Position {