default:
panic("unexpected type")
case *Named:
- err.addf(edge.pos, "%s implicitly parameterized by %s", obj.Name(), TypeString(edge.typ, qf)) // secondary error, \t indented
+ err.addf(atPos(edge.pos), "%s implicitly parameterized by %s", obj.Name(), TypeString(edge.typ, qf)) // secondary error, \t indented
case *TypeParam:
- err.addf(edge.pos, "%s instantiated as %s", obj.Name(), TypeString(edge.typ, qf)) // secondary error, \t indented
+ err.addf(atPos(edge.pos), "%s instantiated as %s", obj.Name(), TypeString(edge.typ, qf)) // secondary error, \t indented
}
}
err.report()
for i, tpar := range tparams {
pos := pos
if i < len(xlist) {
- pos = syntax.StartPos(xlist[i])
+ pos = startPos(xlist[i])
}
w.assign(pkg, pos, tpar, targs[i])
}
// ExprString returns a string representation of x.
func ExprString(x syntax.Node) string { return syntax.String(x) }
+// startPos returns the start position of node n.
+func startPos(n syntax.Node) syntax.Pos { return syntax.StartPos(n) }
+
// endPos returns the position of the first character immediately after node n.
func endPos(n syntax.Node) syntax.Pos { return syntax.EndPos(n) }
"lookup.go": func(f *ast.File) { fixTokenPos(f) },
"main_test.go": nil,
"map.go": nil,
- "named.go": func(f *ast.File) { fixTokenPos(f); renameSelectors(f, "Trace->_Trace") },
- "object.go": func(f *ast.File) { fixTokenPos(f); renameIdents(f, "NewTypeNameLazy->_NewTypeNameLazy") },
- "object_test.go": func(f *ast.File) { renameImportPath(f, `"cmd/compile/internal/types2"->"go/types"`) },
- "objset.go": nil,
+ "mono.go": func(f *ast.File) {
+ fixTokenPos(f)
+ insertImportPath(f, `"go/ast"`)
+ renameSelectorExprs(f, "syntax.Expr->ast.Expr")
+ },
+ "named.go": func(f *ast.File) { fixTokenPos(f); renameSelectors(f, "Trace->_Trace") },
+ "object.go": func(f *ast.File) { fixTokenPos(f); renameIdents(f, "NewTypeNameLazy->_NewTypeNameLazy") },
+ "object_test.go": func(f *ast.File) { renameImportPath(f, `"cmd/compile/internal/types2"->"go/types"`) },
+ "objset.go": nil,
"operand.go": func(f *ast.File) {
insertImportPath(f, `"go/token"`)
renameImportPath(f, `"cmd/compile/internal/syntax"->"go/ast"`)
+// Code generated by "go test -run=Generate -write=all"; DO NOT EDIT.
+
// Copyright 2021 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.
for i, tpar := range tparams {
pos := pos
if i < len(xlist) {
- pos = xlist[i].Pos()
+ pos = startPos(xlist[i])
}
w.assign(pkg, pos, tpar, targs[i])
}
// argErrPos returns positioner for reportign an invalid argument count.
func argErrPos(call *ast.CallExpr) positioner { return inNode(call, call.Rparen) }
+// startPos returns the start position of node n.
+func startPos(n ast.Node) token.Pos { return n.Pos() }
+
// endPos returns the position of the first character immediately after node n.
func endPos(n ast.Node) token.Pos { return n.End() }