From: Josh Bleecher Snyder Date: Mon, 16 May 2016 21:28:44 +0000 (-0700) Subject: cmd/compile: convert getdyn int arg to bool X-Git-Tag: go1.8beta1~1664 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=41943d96390353695225da6ef44dacdca84d92df;p=gostls13.git cmd/compile: convert getdyn int arg to bool Passes toolstash -cmp. Change-Id: I5b893b8b82b358534fd85542f05e3aa7e666bcd3 Reviewed-on: https://go-review.googlesource.com/26752 Run-TryBot: Josh Bleecher Snyder TryBot-Result: Gobot Gobot Reviewed-by: David Crawshaw Reviewed-by: Brad Fitzpatrick --- diff --git a/src/cmd/compile/internal/gc/sinit.go b/src/cmd/compile/internal/gc/sinit.go index 0adcb37388..f6ff906999 100644 --- a/src/cmd/compile/internal/gc/sinit.go +++ b/src/cmd/compile/internal/gc/sinit.go @@ -533,7 +533,9 @@ const ( initConst // contains some constant values, which may be written into data symbols ) -func getdyn(n *Node, top int) initGenType { +// getdyn calculates the initGenType for n. +// If top is false, getdyn is recursing. +func getdyn(n *Node, top bool) initGenType { switch n.Op { default: if isliteral(n) { @@ -542,7 +544,7 @@ func getdyn(n *Node, top int) initGenType { return initDynamic case OARRAYLIT: - if top == 0 && n.Type.IsSlice() { + if !top && n.Type.IsSlice() { return initDynamic } @@ -552,7 +554,7 @@ func getdyn(n *Node, top int) initGenType { var mode initGenType for _, n1 := range n.List.Slice() { value := n1.Right - mode |= getdyn(value, 0) + mode |= getdyn(value, false) if mode == initDynamic|initConst { break } @@ -758,7 +760,7 @@ func slicelit(ctxt int, n *Node, var_ *Node, init *Nodes) { // make static initialized array (1),(2) var vstat *Node - mode := getdyn(n, 1) + mode := getdyn(n, true) if mode&initConst != 0 { vstat = staticname(t, ctxt) arraylit(ctxt, 1, n, vstat, init)