func RangeExprType(t *types.Type) *types.Type { … }
func typecheckrangeExpr(n *ir.RangeStmt) { … }
func tcAssign(n *ir.AssignStmt) { … }
func tcAssignList(n *ir.AssignListStmt) { … }
func assign(stmt ir.Node, lhs, rhs []ir.Node) { … }
func plural(n int) string { … }
func tcCheckNil(n *ir.UnaryExpr) ir.Node { … }
func tcFor(n *ir.ForStmt) ir.Node { … }
func tcGoDefer(n *ir.GoDeferStmt) { … }
func normalizeGoDeferCall(pos src.XPos, op ir.Op, call ir.Node, init *ir.Nodes) *ir.CallExpr { … }
func tcIf(n *ir.IfStmt) ir.Node { … }
func tcRange(n *ir.RangeStmt) { … }
func tcReturn(n *ir.ReturnStmt) ir.Node { … }
func tcSelect(sel *ir.SelectStmt) { … }
func tcSend(n *ir.SendStmt) ir.Node { … }
func tcSwitch(n *ir.SwitchStmt) { … }
func tcSwitchExpr(n *ir.SwitchStmt) { … }
func tcSwitchType(n *ir.SwitchStmt) { … }
type typeSet …
func (s *typeSet) add(pos src.XPos, typ *types.Type) { … }