A Builtin represents a specific use of a built-in function, e.g. len.

Builtins are immutable values. Builtins do not have addresses. Builtins can only appear in CallCommon.Func.

Name() indicates the function: one of the built-in functions from the Go spec (excluding "make" and "new") or one of these ssa-defined intrinsics:

// wrapnilchk returns ptr if non-nil, panics otherwise.
// (For use in indirection wrappers.)
func ssa:wrapnilchk(ptr *T, recvType, methodName string) *T

Object() returns a *types.Builtin for built-ins defined by the spec, nil for others.

Type() returns a *types.Signature representing the effective signature of the built-in for this call.