diff --git a/src/cmd/compile/internal/gc/ssa.go b/src/cmd/compile/internal/gc/ssa.go index aa44dc0798..1b01894ee3 100644 --- a/src/cmd/compile/internal/gc/ssa.go +++ b/src/cmd/compile/internal/gc/ssa.go @@ -299,8 +299,13 @@ func (s *state) stmt(n *Node) { case OBLOCK: s.stmtList(n.List) + // No-ops case OEMPTY, ODCLCONST, ODCLTYPE: + // Expression statements + case OCALLFUNC, OCALLMETH, OCALLINTER: + s.expr(n) + case ODCL: if n.Left.Class&PHEAP == 0 { return @@ -434,9 +439,6 @@ func (s *state) stmt(n *Node) { } s.startBlock(bEnd) - case OCALLFUNC: - s.expr(n) - case OVARKILL: // TODO(khr): ??? anything to do here? Only for addrtaken variables? // Maybe just link it in the store chain?