From: Josh Bleecher Snyder Date: Thu, 16 Jul 2015 19:25:36 +0000 (-0600) Subject: [dev.ssa] cmd/compile: call through to expr for expression statements X-Git-Tag: go1.7beta1~1623^2^2~371 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=2574e4ac1cb4c78023801d355b1204cbc2a71f11;p=gostls13.git [dev.ssa] cmd/compile: call through to expr for expression statements Change-Id: I8625eff33f5a49dbaaec060c3fa067d7531193c4 Reviewed-on: https://go-review.googlesource.com/12313 Reviewed-by: Keith Randall --- 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?