]> Cypherpunks repositories - gostls13.git/commitdiff
label declarations not handled properly
authorRobert Griesemer <gri@golang.org>
Fri, 13 Feb 2009 21:42:43 +0000 (13:42 -0800)
committerRobert Griesemer <gri@golang.org>
Fri, 13 Feb 2009 21:42:43 +0000 (13:42 -0800)
R=rsc
DELTA=27  (27 added, 0 deleted, 0 changed)
OCL=25015
CL=25015

test/bugs/bug137.go [new file with mode: 0644]
test/golden.out

diff --git a/test/bugs/bug137.go b/test/bugs/bug137.go
new file mode 100644 (file)
index 0000000..1527924
--- /dev/null
@@ -0,0 +1,26 @@
+// $G $D/$F.go || echo BUG should compile
+
+// Copyright 2009 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package main
+
+func main() {
+L1:
+L2:    for i := 0; i < 10; i++ {
+               print(i);
+               break L2;
+       }
+
+L3: ;
+L4:    for i := 0; i < 10; i++ {
+               print(i);
+               break L4;
+       }
+}
+
+/*
+bug137.go:9: break label is not defined: L2
+bug137.go:15: break label is not defined: L4
+*/
index c427f423dc04d5d44ec00da151acbf387eeced6f..128c71f4df8dcb3dbae798d8ec33aabd72455f28 100644 (file)
@@ -166,6 +166,11 @@ BUG: compilation succeeds incorrectly
 =========== bugs/bug136.go
 BUG: should not compile
 
+=========== bugs/bug137.go
+bugs/bug137.go:9: break label is not defined: L2
+bugs/bug137.go:15: break label is not defined: L4
+BUG should compile
+
 =========== fixedbugs/bug016.go
 fixedbugs/bug016.go:7: overflow converting constant to uint