]> Cypherpunks repositories - gostls13.git/commitdiff
Test that a break statement inside a select statement breaks
authorIan Lance Taylor <iant@golang.org>
Thu, 6 Nov 2008 23:24:10 +0000 (15:24 -0800)
committerIan Lance Taylor <iant@golang.org>
Thu, 6 Nov 2008 23:24:10 +0000 (15:24 -0800)
out of the enclosing loop.

R=ken
DELTA=20  (20 added, 0 deleted, 0 changed)
OCL=18686
CL=18714

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

diff --git a/test/bugs/bug119.go b/test/bugs/bug119.go
new file mode 100644 (file)
index 0000000..956f1b9
--- /dev/null
@@ -0,0 +1,20 @@
+// $G $D/$F.go && $L $F.$A && ./$A.out || echo BUG: should not fail
+
+// 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() {
+  a := new(chan bool);
+  for {
+    select {
+    case <- a:
+      panic();
+    default:
+      break;
+    }
+    panic();
+  }
+}
index 640267d30189b9eff6723778afe10e7a6d2edc2d..77fe8dc881653fe12687da801b3522eb8a874fb5 100644 (file)
@@ -153,6 +153,10 @@ BUG: should compile
 =========== bugs/bug118.go
 BUG should compile
 
+=========== bugs/bug119.go
+
+panic on line 82 PC=xxx
+BUG should not panic
 =========== fixedbugs/bug016.go
 fixedbugs/bug016.go:7: overflow converting constant to uint