]> Cypherpunks.ru repositories - gostls13.git/blobdiff - test/label1.go
cmd/compile/internal/inline: score call sites exposed by inlines
[gostls13.git] / test / label1.go
index 937b5cb9009e66649a400ace4d08421df4d667ba..a8eaecbff2fa0a50f0af0dabe807aafee7022825 100644 (file)
@@ -1,6 +1,6 @@
 // errorcheck
 
-// Copyright 2011 The Go Authors.  All rights reserved.
+// Copyright 2011 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.
 
@@ -12,7 +12,19 @@ package main
 
 var x int
 
-func f() {
+func f1() {
+       switch x {
+       case 1:
+               continue // ERROR "continue is not in a loop$|continue statement not within for"
+       }
+       select {
+       default:
+               continue // ERROR "continue is not in a loop$|continue statement not within for"
+       }
+
+}
+
+func f2() {
 L1:
        for {
                if x == 0 {
@@ -31,7 +43,7 @@ L2:
                        break L2
                }
                if x == 1 {
-                       continue L2 // ERROR "invalid continue label .*L2|continue is not in a loop"
+                       continue L2 // ERROR "invalid continue label .*L2|continue is not in a loop$"
                }
                goto L2
        }
@@ -49,7 +61,7 @@ L3:
                        break L3
                }
                if x == 12 {
-                       continue L3 // ERROR "invalid continue label .*L3|continue is not in a loop"
+                       continue L3 // ERROR "invalid continue label .*L3|continue is not in a loop$"
                }
                goto L3
        }
@@ -60,7 +72,7 @@ L4:
                        break L4 // ERROR "invalid break label .*L4"
                }
                if x == 14 {
-                       continue L4 // ERROR "invalid continue label .*L4|continue is not in a loop"
+                       continue L4 // ERROR "invalid continue label .*L4|continue is not in a loop$"
                }
                if x == 15 {
                        goto L4
@@ -68,12 +80,12 @@ L4:
        }
 
 L5:
-       f()
+       f2()
        if x == 16 {
                break L5 // ERROR "invalid break label .*L5"
        }
        if x == 17 {
-               continue L5 // ERROR "invalid continue label .*L5|continue is not in a loop"
+               continue L5 // ERROR "invalid continue label .*L5|continue is not in a loop$"
        }
        if x == 18 {
                goto L5
@@ -91,14 +103,14 @@ L5:
                }
        }
 
-       continue // ERROR "continue is not in a loop"
+       continue // ERROR "continue is not in a loop$|continue statement not within for"
        for {
-               continue on // ERROR "continue label not defined: on"
+               continue on // ERROR "continue label not defined: on|invalid continue label .*on"
        }
 
-       break // ERROR "break is not in a loop"
+       break // ERROR "break is not in a loop, switch, or select|break statement not within for or switch or select"
        for {
-               break dance // ERROR "break label not defined: dance"
+               break dance // ERROR "break label not defined: dance|invalid break label .*dance"
        }
 
        for {