[go] cmd/compile: use "init... cycle" rather then "init... loop" in error messages

1 view
Skip to first unread message

Gopher Robot (Gerrit)

unread,
Sep 23, 2022, 4:27:14 PM9/23/22
to Robert Griesemer, goph...@pubsubhelper.golang.org, golang-...@googlegroups.com, Robert Griesemer, Robert Findley, golang-co...@googlegroups.com

Gopher Robot submitted this change.

View Change


Approvals: Robert Griesemer: Looks good to me, but someone else must approve; Run TryBots; Automatically submit change Robert Findley: Looks good to me, approved Gopher Robot: TryBots succeeded
cmd/compile: use "init... cycle" instead of "init... loop" in error messages

For #55326.

Change-Id: Ia3c1124305986dcd49ac769e700055b263cfbd59
Reviewed-on: https://go-review.googlesource.com/c/go/+/432615
Reviewed-by: Robert Findley <rfin...@google.com>
Auto-Submit: Robert Griesemer <g...@google.com>
Run-TryBot: Robert Griesemer <g...@google.com>
TryBot-Result: Gopher Robot <go...@golang.org>
Reviewed-by: Robert Griesemer <g...@google.com>
---
M src/cmd/compile/internal/types2/initorder.go
M test/fixedbugs/bug13343.go
M test/fixedbugs/bug223.go
M test/fixedbugs/bug413.go
M test/fixedbugs/bug459.go
M test/fixedbugs/bug463.go
M test/fixedbugs/issue23093.go
M test/fixedbugs/issue23094.go
M test/fixedbugs/issue4847.go
M test/fixedbugs/issue52748.go
M test/fixedbugs/issue6703a.go
M test/fixedbugs/issue6703b.go
M test/fixedbugs/issue6703c.go
M test/fixedbugs/issue6703d.go
M test/fixedbugs/issue6703e.go
M test/fixedbugs/issue6703f.go
M test/fixedbugs/issue6703g.go
M test/fixedbugs/issue6703h.go
M test/fixedbugs/issue6703i.go
M test/fixedbugs/issue6703j.go
M test/fixedbugs/issue6703k.go
M test/fixedbugs/issue6703l.go
M test/fixedbugs/issue6703m.go
M test/fixedbugs/issue6703n.go
M test/fixedbugs/issue6703o.go
M test/fixedbugs/issue6703p.go
M test/fixedbugs/issue6703q.go
M test/fixedbugs/issue6703r.go
M test/fixedbugs/issue6703s.go
M test/fixedbugs/issue6703t.go
M test/fixedbugs/issue6703u.go
M test/fixedbugs/issue6703v.go
M test/fixedbugs/issue6703w.go
M test/fixedbugs/issue6703x.go
M test/fixedbugs/issue6703y.go
M test/fixedbugs/issue6703z.go
M test/fixedbugs/issue7525.go
M test/fixedbugs/issue7525b.go
M test/fixedbugs/issue7525c.go
M test/fixedbugs/issue7525d.go
M test/fixedbugs/issue7525e.go
M test/initexp.go
M test/typecheckloop.go
43 files changed, 65 insertions(+), 52 deletions(-)

diff --git a/src/cmd/compile/internal/types2/initorder.go b/src/cmd/compile/internal/types2/initorder.go
index cf6110b..5f5334e 100644
--- a/src/cmd/compile/internal/types2/initorder.go
+++ b/src/cmd/compile/internal/types2/initorder.go
@@ -153,11 +153,7 @@
func (check *Checker) reportCycle(cycle []Object) {
obj := cycle[0]
var err error_
- if check.conf.CompilerErrorMessages {
- err.errorf(obj, "initialization loop for %s", obj.Name())
- } else {
- err.errorf(obj, "initialization cycle for %s", obj.Name())
- }
+ err.errorf(obj, "initialization cycle for %s", obj.Name())
// subtle loop: print cycle[i] for i = 0, n-1, n-2, ... 1 for len(cycle) = n
for i := len(cycle) - 1; i >= 0; i-- {
err.errorf(obj, "%s refers to", obj.Name())
diff --git a/test/fixedbugs/bug13343.go b/test/fixedbugs/bug13343.go
index a7febea..75b3f01 100644
--- a/test/fixedbugs/bug13343.go
+++ b/test/fixedbugs/bug13343.go
@@ -7,7 +7,7 @@
package main

var (
- a, b = f() // ERROR "initialization loop|depends upon itself|depend upon each other"
+ a, b = f() // ERROR "initialization cycle|depends upon itself|depend upon each other"
c = b // GCCGO_ERROR "depends upon itself|depend upon each other"
)

diff --git a/test/fixedbugs/bug223.go b/test/fixedbugs/bug223.go
index 50082cba..3aa7dda 100644
--- a/test/fixedbugs/bug223.go
+++ b/test/fixedbugs/bug223.go
@@ -4,7 +4,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

-// check that initialization loop is diagnosed
+// check that initialization cycle is diagnosed
// and that closure cannot be used to hide it.
// error message is not standard format, so no errchk above.

@@ -18,4 +18,4 @@
}
}

-var m = map[string]F{"f": f} // ERROR "initialization loop|depends upon itself|initialization cycle"
+var m = map[string]F{"f": f} // ERROR "initialization cycle|depends upon itself|initialization cycle"
diff --git a/test/fixedbugs/bug413.go b/test/fixedbugs/bug413.go
index 819bd1a..e22279e 100644
--- a/test/fixedbugs/bug413.go
+++ b/test/fixedbugs/bug413.go
@@ -8,4 +8,4 @@

func f(i int) int { return i }

-var i = func() int {a := f(i); return a}() // ERROR "initialization loop|depends upon itself"
+var i = func() int {a := f(i); return a}() // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/bug459.go b/test/fixedbugs/bug459.go
index c71cb1b..a404d21 100644
--- a/test/fixedbugs/bug459.go
+++ b/test/fixedbugs/bug459.go
@@ -4,12 +4,12 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

-// Issue 3890: missing detection of init loop involving
+// Issue 3890: missing detection of init cycle involving
// method calls in function bodies.

package flag

-var commandLine = NewFlagSet() // ERROR "loop|depends upon itself"
+var commandLine = NewFlagSet() // ERROR "initialization cycle|depends upon itself"

type FlagSet struct {
}
diff --git a/test/fixedbugs/bug463.go b/test/fixedbugs/bug463.go
index ed546bf..36515f8 100644
--- a/test/fixedbugs/bug463.go
+++ b/test/fixedbugs/bug463.go
@@ -9,11 +9,11 @@

package main

-const a = a // ERROR "refers to itself|definition loop|initialization loop"
+const a = a // ERROR "refers to itself|definition loop|initialization cycle"

const (
X = A
- A = B // ERROR "refers to itself|definition loop|initialization loop"
+ A = B // ERROR "refers to itself|definition loop|initialization cycle"
B = D
C, D = 1, A
)
diff --git a/test/fixedbugs/issue23093.go b/test/fixedbugs/issue23093.go
index 7b2865c..0d3b13e 100644
--- a/test/fixedbugs/issue23093.go
+++ b/test/fixedbugs/issue23093.go
@@ -6,4 +6,4 @@

package p

-var f = func() { f() } // ERROR "initialization loop|initialization expression for .*f.* depends upon itself"
+var f = func() { f() } // ERROR "initialization cycle|initialization expression for .*f.* depends upon itself"
diff --git a/test/fixedbugs/issue23094.go b/test/fixedbugs/issue23094.go
index 853b19b..7c58cad 100644
--- a/test/fixedbugs/issue23094.go
+++ b/test/fixedbugs/issue23094.go
@@ -8,4 +8,4 @@

package p

-var a [len(a)]int // ERROR "\[len\(a\)\]int|initialization loop"
+var a [len(a)]int // ERROR "\[len\(a\)\]int|initialization cycle"
diff --git a/test/fixedbugs/issue4847.go b/test/fixedbugs/issue4847.go
index 91a6568..176525e 100644
--- a/test/fixedbugs/issue4847.go
+++ b/test/fixedbugs/issue4847.go
@@ -4,7 +4,7 @@
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

-// Issue 4847: initialization loop is not detected.
+// Issue 4847: initialization cycle is not detected.

package p

@@ -19,6 +19,6 @@

var foo = matcher(matchList)

-var matchAny = matcher(matchList) // ERROR "initialization loop|depends upon itself"
+var matchAny = matcher(matchList) // ERROR "initialization cycle|depends upon itself"

func matchAnyFn(s *S) (err E) { return matchAny(s) }
diff --git a/test/fixedbugs/issue52748.go b/test/fixedbugs/issue52748.go
index 42973c0..e9f7ea0 100644
--- a/test/fixedbugs/issue52748.go
+++ b/test/fixedbugs/issue52748.go
@@ -10,4 +10,4 @@

type S[T any] struct{}

-const c = unsafe.Sizeof(S[[c]byte]{}) // ERROR "initialization loop"
+const c = unsafe.Sizeof(S[[c]byte]{}) // ERROR "initialization cycle"
diff --git a/test/fixedbugs/issue6703a.go b/test/fixedbugs/issue6703a.go
index 38c5956..fe736f5 100644
--- a/test/fixedbugs/issue6703a.go
+++ b/test/fixedbugs/issue6703a.go
@@ -13,4 +13,4 @@
return 0
}

-var x = fx // ERROR "initialization loop|depends upon itself"
+var x = fx // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703b.go b/test/fixedbugs/issue6703b.go
index 35438c3..4151094 100644
--- a/test/fixedbugs/issue6703b.go
+++ b/test/fixedbugs/issue6703b.go
@@ -13,4 +13,4 @@
return 0
}

-var x = fx() // ERROR "initialization loop|depends upon itself"
+var x = fx() // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703c.go b/test/fixedbugs/issue6703c.go
index ade40e3..73d686c 100644
--- a/test/fixedbugs/issue6703c.go
+++ b/test/fixedbugs/issue6703c.go
@@ -15,4 +15,4 @@
return 0
}

-var x = T.m // ERROR "initialization loop|depends upon itself"
+var x = T.m // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703d.go b/test/fixedbugs/issue6703d.go
index dd48163..5d77c84 100644
--- a/test/fixedbugs/issue6703d.go
+++ b/test/fixedbugs/issue6703d.go
@@ -15,4 +15,4 @@
return 0
}

-var x = T.m(0) // ERROR "initialization loop|depends upon itself"
+var x = T.m(0) // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703e.go b/test/fixedbugs/issue6703e.go
index d362d6e..604d4bf 100644
--- a/test/fixedbugs/issue6703e.go
+++ b/test/fixedbugs/issue6703e.go
@@ -15,4 +15,4 @@
return 0
}

-var x = T(0).m // ERROR "initialization loop|depends upon itself"
+var x = T(0).m // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703f.go b/test/fixedbugs/issue6703f.go
index 0b49026..06c9cdf 100644
--- a/test/fixedbugs/issue6703f.go
+++ b/test/fixedbugs/issue6703f.go
@@ -15,4 +15,4 @@
return 0
}

-var x = T(0).m() // ERROR "initialization loop|depends upon itself"
+var x = T(0).m() // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703g.go b/test/fixedbugs/issue6703g.go
index 05ec740..a2ca5a3 100644
--- a/test/fixedbugs/issue6703g.go
+++ b/test/fixedbugs/issue6703g.go
@@ -17,4 +17,4 @@

type E struct{ T }

-var x = E.m // ERROR "initialization loop|depends upon itself"
+var x = E.m // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703h.go b/test/fixedbugs/issue6703h.go
index f6b69e1..e26ce6a 100644
--- a/test/fixedbugs/issue6703h.go
+++ b/test/fixedbugs/issue6703h.go
@@ -17,4 +17,4 @@

type E struct{ T }

-var x = E.m(E{0}) // ERROR "initialization loop|depends upon itself"
+var x = E.m(E{0}) // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703i.go b/test/fixedbugs/issue6703i.go
index fb580a2..af485b5 100644
--- a/test/fixedbugs/issue6703i.go
+++ b/test/fixedbugs/issue6703i.go
@@ -17,4 +17,4 @@

type E struct{ T }

-var x = E{}.m // ERROR "initialization loop|depends upon itself"
+var x = E{}.m // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703j.go b/test/fixedbugs/issue6703j.go
index b4c079f..0b72250 100644
--- a/test/fixedbugs/issue6703j.go
+++ b/test/fixedbugs/issue6703j.go
@@ -17,4 +17,4 @@

type E struct{ T }

-var x = E{}.m() // ERROR "initialization loop|depends upon itself"
+var x = E{}.m() // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703k.go b/test/fixedbugs/issue6703k.go
index 6f606e2..fad8edd 100644
--- a/test/fixedbugs/issue6703k.go
+++ b/test/fixedbugs/issue6703k.go
@@ -17,5 +17,5 @@

var (
t T
- x = t.m // ERROR "initialization loop|depends upon itself"
+ x = t.m // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703l.go b/test/fixedbugs/issue6703l.go
index 684c225..750c95e 100644
--- a/test/fixedbugs/issue6703l.go
+++ b/test/fixedbugs/issue6703l.go
@@ -17,5 +17,5 @@

var (
t T
- x = t.m() // ERROR "initialization loop|depends upon itself"
+ x = t.m() // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703m.go b/test/fixedbugs/issue6703m.go
index 7d1b604..7646959 100644
--- a/test/fixedbugs/issue6703m.go
+++ b/test/fixedbugs/issue6703m.go
@@ -21,5 +21,5 @@

var (
t T
- x = f().m // ERROR "initialization loop|depends upon itself"
+ x = f().m // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703n.go b/test/fixedbugs/issue6703n.go
index 22646af..3397892 100644
--- a/test/fixedbugs/issue6703n.go
+++ b/test/fixedbugs/issue6703n.go
@@ -21,5 +21,5 @@

var (
t T
- x = f().m() // ERROR "initialization loop|depends upon itself"
+ x = f().m() // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703o.go b/test/fixedbugs/issue6703o.go
index a11fdfd..87d706b 100644
--- a/test/fixedbugs/issue6703o.go
+++ b/test/fixedbugs/issue6703o.go
@@ -19,5 +19,5 @@

var (
e E
- x = e.m // ERROR "initialization loop|depends upon itself"
+ x = e.m // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703p.go b/test/fixedbugs/issue6703p.go
index 3ac7a63..24ef94a 100644
--- a/test/fixedbugs/issue6703p.go
+++ b/test/fixedbugs/issue6703p.go
@@ -19,5 +19,5 @@

var (
e E
- x = e.m() // ERROR "initialization loop|depends upon itself"
+ x = e.m() // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703q.go b/test/fixedbugs/issue6703q.go
index b087c15..92bcab9 100644
--- a/test/fixedbugs/issue6703q.go
+++ b/test/fixedbugs/issue6703q.go
@@ -24,5 +24,5 @@

var (
e E
- x = g().m // ERROR "initialization loop|depends upon itself"
+ x = g().m // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703r.go b/test/fixedbugs/issue6703r.go
index de514f1..2b538ff 100644
--- a/test/fixedbugs/issue6703r.go
+++ b/test/fixedbugs/issue6703r.go
@@ -24,5 +24,5 @@

var (
e E
- x = g().m() // ERROR "initialization loop|depends upon itself"
+ x = g().m() // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703s.go b/test/fixedbugs/issue6703s.go
index cd3c5b3..74ab386 100644
--- a/test/fixedbugs/issue6703s.go
+++ b/test/fixedbugs/issue6703s.go
@@ -15,4 +15,4 @@
return 0
}

-var x = (*T).pm // ERROR "initialization loop|depends upon itself"
+var x = (*T).pm // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703t.go b/test/fixedbugs/issue6703t.go
index 62de37c..e9266b0 100644
--- a/test/fixedbugs/issue6703t.go
+++ b/test/fixedbugs/issue6703t.go
@@ -15,4 +15,4 @@
return 0
}

-var x = (*T).pm(nil) // ERROR "initialization loop|depends upon itself"
+var x = (*T).pm(nil) // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703u.go b/test/fixedbugs/issue6703u.go
index 961a000..9b03c17 100644
--- a/test/fixedbugs/issue6703u.go
+++ b/test/fixedbugs/issue6703u.go
@@ -15,4 +15,4 @@
return 0
}

-var x = (*T)(nil).pm // ERROR "initialization loop|depends upon itself"
+var x = (*T)(nil).pm // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703v.go b/test/fixedbugs/issue6703v.go
index 2409911..349289c 100644
--- a/test/fixedbugs/issue6703v.go
+++ b/test/fixedbugs/issue6703v.go
@@ -15,4 +15,4 @@
return 0
}

-var x = (*T)(nil).pm() // ERROR "initialization loop|depends upon itself"
+var x = (*T)(nil).pm() // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703w.go b/test/fixedbugs/issue6703w.go
index b7b3d91..846b5f8 100644
--- a/test/fixedbugs/issue6703w.go
+++ b/test/fixedbugs/issue6703w.go
@@ -17,5 +17,5 @@

var (
p *T
- x = p.pm // ERROR "initialization loop|depends upon itself"
+ x = p.pm // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703x.go b/test/fixedbugs/issue6703x.go
index 48daf03..828c09a 100644
--- a/test/fixedbugs/issue6703x.go
+++ b/test/fixedbugs/issue6703x.go
@@ -17,5 +17,5 @@

var (
p *T
- x = p.pm() // ERROR "initialization loop|depends upon itself"
+ x = p.pm() // ERROR "initialization cycle|depends upon itself"
)
diff --git a/test/fixedbugs/issue6703y.go b/test/fixedbugs/issue6703y.go
index 278dfcd..01b8abd 100644
--- a/test/fixedbugs/issue6703y.go
+++ b/test/fixedbugs/issue6703y.go
@@ -20,4 +20,4 @@
return nil
}

-var x = pf().pm // ERROR "initialization loop|depends upon itself"
+var x = pf().pm // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue6703z.go b/test/fixedbugs/issue6703z.go
index f81a3a8..76c17e2 100644
--- a/test/fixedbugs/issue6703z.go
+++ b/test/fixedbugs/issue6703z.go
@@ -20,4 +20,4 @@
return nil
}

-var x = pf().pm() // ERROR "initialization loop|depends upon itself"
+var x = pf().pm() // ERROR "initialization cycle|depends upon itself"
diff --git a/test/fixedbugs/issue7525.go b/test/fixedbugs/issue7525.go
index b292d66..05e26d1 100644
--- a/test/fixedbugs/issue7525.go
+++ b/test/fixedbugs/issue7525.go
@@ -10,6 +10,6 @@

import "unsafe"

-var x struct { // GC_ERROR "initialization loop for x"
+var x struct { // GC_ERROR "initialization cycle for x"
a [unsafe.Sizeof(x.a)]int // GCCGO_ERROR "array bound|typechecking loop|invalid expression"
}
diff --git a/test/fixedbugs/issue7525b.go b/test/fixedbugs/issue7525b.go
index 139408e..b72d12f 100644
--- a/test/fixedbugs/issue7525b.go
+++ b/test/fixedbugs/issue7525b.go
@@ -8,6 +8,6 @@

package main

-var y struct { // GC_ERROR "initialization loop for y"
+var y struct { // GC_ERROR "initialization cycle for y"
d [len(y.d)]int // GCCGO_ERROR "array bound|typechecking loop|invalid array"
}
diff --git a/test/fixedbugs/issue7525c.go b/test/fixedbugs/issue7525c.go
index 9448159..8d51154 100644
--- a/test/fixedbugs/issue7525c.go
+++ b/test/fixedbugs/issue7525c.go
@@ -8,6 +8,6 @@

package main

-var z struct { // GC_ERROR "initialization loop for z"
+var z struct { // GC_ERROR "initialization cycle for z"
e [cap(z.e)]int // GCCGO_ERROR "array bound|typechecking loop|invalid array"
}
diff --git a/test/fixedbugs/issue7525d.go b/test/fixedbugs/issue7525d.go
index 62d4659..cedb9f7 100644
--- a/test/fixedbugs/issue7525d.go
+++ b/test/fixedbugs/issue7525d.go
@@ -10,6 +10,6 @@

import "unsafe"

-var x struct { // GC_ERROR "initialization loop for x"
+var x struct { // GC_ERROR "initialization cycle for x"
b [unsafe.Offsetof(x.b)]int // GCCGO_ERROR "array bound|typechecking loop|invalid array"
}
diff --git a/test/fixedbugs/issue7525e.go b/test/fixedbugs/issue7525e.go
index 150df07..5746397 100644
--- a/test/fixedbugs/issue7525e.go
+++ b/test/fixedbugs/issue7525e.go
@@ -10,6 +10,6 @@

import "unsafe"

-var x struct { // GC_ERROR "initialization loop for x"
+var x struct { // GC_ERROR "initialization cycle for x"
c [unsafe.Alignof(x.c)]int // GCCGO_ERROR "array bound|typechecking loop|invalid array"
}
diff --git a/test/initexp.go b/test/initexp.go
index f279a7c..b4d4701a 100644
--- a/test/initexp.go
+++ b/test/initexp.go
@@ -12,7 +12,7 @@
// and runs in a fraction of a second without it.
// 10 seconds (-t 10 above) should be plenty if the code is working.

-var x = f() + z() // ERROR "initialization loop"
+var x = f() + z() // ERROR "initialization cycle"

func f() int { return a1() + a2() + a3() + a4() + a5() + a6() + a7() }
func z() int { return x }
diff --git a/test/typecheckloop.go b/test/typecheckloop.go
index 13f413c..a143e09 100644
--- a/test/typecheckloop.go
+++ b/test/typecheckloop.go
@@ -9,6 +9,6 @@

package main

-const A = 1 + B // ERROR "constant definition loop\n.*A uses B\n.*B uses C\n.*C uses A|initialization loop"
-const B = C - 1 // ERROR "constant definition loop\n.*B uses C\n.*C uses B|initialization loop"
+const A = 1 + B // ERROR "constant definition loop\n.*A uses B\n.*B uses C\n.*C uses A|initialization cycle"
+const B = C - 1 // ERROR "constant definition loop\n.*B uses C\n.*C uses B|initialization cycle"
const C = A + B + 1

To view, visit change 432615. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: go
Gerrit-Branch: master
Gerrit-Change-Id: Ia3c1124305986dcd49ac769e700055b263cfbd59
Gerrit-Change-Number: 432615
Gerrit-PatchSet: 4
Gerrit-Owner: Robert Griesemer <g...@golang.org>
Gerrit-Reviewer: Gopher Robot <go...@golang.org>
Gerrit-Reviewer: Robert Findley <rfin...@google.com>
Gerrit-Reviewer: Robert Griesemer <g...@google.com>
Gerrit-MessageType: merged
Reply all
Reply to author
Forward
0 new messages