Stop using deprecated gcimporter15 package
diff --git a/lint.go b/lint.go index 2a2e607..ccc5cff 100644 --- a/lint.go +++ b/lint.go
@@ -22,7 +22,7 @@ "unicode" "unicode/utf8" - "golang.org/x/tools/go/gcimporter15" + "golang.org/x/tools/go/gcexportdata" ) const styleGuideBase = "https://golang.org/wiki/CodeReviewComments" @@ -235,30 +235,15 @@ return &p.problems[len(p.problems)-1] } -var gcImporter = gcimporter.Import - -// importer implements go/types.Importer{,From}. -type importer struct { - impFn func(packages map[string]*types.Package, path, srcDir string) (*types.Package, error) - packages map[string]*types.Package -} - -func (i importer) Import(path string) (*types.Package, error) { - return i.impFn(i.packages, path, "") -} - -func (i importer) ImportFrom(path, srcDir string, mode types.ImportMode) (*types.Package, error) { - return i.impFn(i.packages, path, srcDir) +var newImporter = func(fset *token.FileSet) types.ImporterFrom { + return gcexportdata.NewImporter(fset, make(map[string]*types.Package)) } func (p *pkg) typeCheck() error { config := &types.Config{ // By setting a no-op error reporter, the type checker does as much work as possible. - Error: func(error) {}, - Importer: importer{ - impFn: gcImporter, - packages: make(map[string]*types.Package), - }, + Error: func(error) {}, + Importer: newImporter(p.fset), } info := &types.Info{ Types: make(map[ast.Expr]types.TypeAndValue),