aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJosh Bleecher Snyder <josharian@gmail.com>2017-04-23 16:34:35 -0700
committerJosh Bleecher Snyder <josharian@gmail.com>2017-04-24 00:58:49 +0000
commita73a330cdfba1d9960f4e8de3f238a00caba1a14 (patch)
treec6feaa5055af7ccd1cf419816a71754af1469abf /src
parent79e5ef293545dd4f96b10e0bf82582e5dd57757a (diff)
downloadgo-a73a330cdfba1d9960f4e8de3f238a00caba1a14.tar.xz
cmd/compile: count init functions from 0, not 1
While we're here, do minor style cleanup. Also, since we know exactly how many init functions there are, use that knowledge. This is cleanup prior to a more substantive CL. Change-Id: I2bba60b3c051c852590f798f45e8268f8bc54ca8 Reviewed-on: https://go-review.googlesource.com/41499 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/cmd/compile/internal/gc/init.go24
1 files changed, 10 insertions, 14 deletions
diff --git a/src/cmd/compile/internal/gc/init.go b/src/cmd/compile/internal/gc/init.go
index df2d70fcaf..7dee46a17c 100644
--- a/src/cmd/compile/internal/gc/init.go
+++ b/src/cmd/compile/internal/gc/init.go
@@ -6,17 +6,16 @@ package gc
import "cmd/compile/internal/types"
-// a function named init is a special case.
-// it is called by the initialization before
-// main is run. to make it unique within a
-// package and also uncallable, the name,
-// normally "pkg.init", is altered to "pkg.init.1".
-
-var renameinit_initgen int
+// A function named init is a special case.
+// It is called by the initialization before main is run.
+// To make it unique within a package and also uncallable,
+// the name, normally "pkg.init", is altered to "pkg.init.0".
+var renameinitgen int
func renameinit() *types.Sym {
- renameinit_initgen++
- return lookupN("init.", renameinit_initgen)
+ s := lookupN("init.", renameinitgen)
+ renameinitgen++
+ return s
}
// anyinit reports whether there any interesting init statements.
@@ -39,7 +38,7 @@ func anyinit(n []*Node) bool {
}
// is there an explicit init function
- if s := lookup("init.1"); s.Def != nil {
+ if renameinitgen > 0 {
return true
}
@@ -126,11 +125,8 @@ func fninit(n []*Node) {
// (8)
// could check that it is fn of no args/returns
- for i := 1; ; i++ {
+ for i := 0; i < renameinitgen; i++ {
s := lookupN("init.", i)
- if s.Def == nil {
- break
- }
a = nod(OCALL, asNode(s.Def), nil)
r = append(r, a)
}