go/ast.CallExpr.Fun (field)
52 uses
go/ast (current package)
ast.go#L388: Fun Expr // function expression
ast.go#L509: func (x *CallExpr) Pos() token.Pos { return x.Fun.Pos() }
walk.go#L120: Walk(v, n.Fun)
go/parser
parser.go#L1633: return &ast.CallExpr{Fun: fun, Lparen: lparen, Args: list, Ellipsis: ellipsis, Rparen: rparen}
parser.go#L2701: if name, _ := x.Fun.(*ast.Ident); name != nil {
go/printer
nodes.go#L979: switch t := x.Fun.(type) {
nodes.go#L988: wasIndented := p.possibleSelectorExpr(x.Fun, token.HighestPrec, depth)
go/types
assignments.go#L361: check.errorf(rhs0, WrongAssignCount, "assignment mismatch: %s but %s returns %s", vars, call.Fun, vals)
builtins.go#L126: check.recordBuiltinType(call.Fun, sig)
builtins.go#L144: check.recordBuiltinType(call.Fun, sig)
builtins.go#L223: check.recordBuiltinType(call.Fun, makeSig(Typ[Int], x.typ))
builtins.go#L232: check.verifyVersionf(call.Fun, go1_21, "clear")
builtins.go#L247: check.recordBuiltinType(call.Fun, makeSig(nil, x.typ))
builtins.go#L268: check.recordBuiltinType(call.Fun, makeSig(nil, x.typ))
builtins.go#L356: check.recordBuiltinType(call.Fun, makeSig(resTyp, x.typ, x.typ))
builtins.go#L383: check.recordBuiltinType(call.Fun, makeSig(Typ[Int], x.typ, y.typ))
builtins.go#L418: check.recordBuiltinType(call.Fun, makeSig(nil, map_, key))
builtins.go#L484: check.recordBuiltinType(call.Fun, makeSig(resTyp, x.typ))
builtins.go#L533: check.recordBuiltinType(call.Fun, makeSig(x.typ, types...))
builtins.go#L539: check.verifyVersionf(call.Fun, go1_21, "built-in %s", bin.name)
builtins.go#L598: check.recordBuiltinType(call.Fun, makeSig(x.typ, types...))
builtins.go#L612: check.recordBuiltinType(call.Fun, makeSig(x.typ, T))
builtins.go#L637: check.recordBuiltinType(call.Fun, makeSig(nil, &emptyInterface))
builtins.go#L657: check.recordBuiltinType(call.Fun, makeSig(nil, params...))
builtins.go#L665: check.recordBuiltinType(call.Fun, makeSig(x.typ))
builtins.go#L670: check.verifyVersionf(call.Fun, go1_17, "unsafe.Add")
builtins.go#L685: check.recordBuiltinType(call.Fun, makeSig(x.typ, x.typ, y.typ))
builtins.go#L698: check.recordBuiltinType(call.Fun, makeSig(Typ[Uintptr], x.typ))
builtins.go#L762: check.recordBuiltinType(call.Fun, makeSig(Typ[Uintptr], obj.Type()))
builtins.go#L786: check.recordBuiltinType(call.Fun, makeSig(Typ[Uintptr], x.typ))
builtins.go#L802: check.verifyVersionf(call.Fun, go1_17, "unsafe.Slice")
builtins.go#L818: check.recordBuiltinType(call.Fun, makeSig(x.typ, ptr, y.typ))
builtins.go#L823: check.verifyVersionf(call.Fun, go1_20, "unsafe.SliceData")
builtins.go#L834: check.recordBuiltinType(call.Fun, makeSig(x.typ, slice))
builtins.go#L839: check.verifyVersionf(call.Fun, go1_20, "unsafe.String")
builtins.go#L854: check.recordBuiltinType(call.Fun, makeSig(x.typ, NewPointer(universeByte), y.typ))
builtins.go#L859: check.verifyVersionf(call.Fun, go1_20, "unsafe.StringData")
builtins.go#L869: check.recordBuiltinType(call.Fun, makeSig(x.typ, Typ[String]))
call.go#L174: ix := unpackIndexedExpr(call.Fun)
call.go#L184: x.expr = call.Fun
call.go#L187: check.exprOrType(x, call.Fun, true)
call.go#L305: check.recordTypeAndValue(call.Fun, value, sig, nil)
call.go#L513: check.errorf(inNode(call, call.Ellipsis), NonVariadicDotDotDot, "cannot use ... in call to non-variadic %s", call.Fun)
call.go#L535: err.addf(at, "%s arguments in call to %s", qualifier, call.Fun)
call.go#L549: switch call.Fun.(type) {
call.go#L551: ix := unpackIndexedExpr(call.Fun)
call.go#L552: check.versionErrorf(inNode(call.Fun, ix.lbrack), go1_18, "function instantiation")
call.go#L621: check.errorf(err.posn(), CannotInferTypeArgs, "in call to %s, %s", call.Fun, err.msg())
call.go#L628: rsig = check.instantiateSignature(call.Pos(), call.Fun, sig, targs[:n], xlist)
call.go#L654: context := check.sprintf("argument to %s", call.Fun)
exprstring.go#L104: WriteExpr(buf, x.Fun)
gotest.tools/v3/internal/source
source.go#L114: ast.Walk(v, typed.Call.Fun)