summaryrefslogtreecommitdiffstats
path: root/src/test/ui/label/label_break_value_continue.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/label/label_break_value_continue.rs')
-rw-r--r--src/test/ui/label/label_break_value_continue.rs27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/test/ui/label/label_break_value_continue.rs b/src/test/ui/label/label_break_value_continue.rs
new file mode 100644
index 000000000..e0deb30c9
--- /dev/null
+++ b/src/test/ui/label/label_break_value_continue.rs
@@ -0,0 +1,27 @@
+#![feature(label_break_value)]
+#![allow(unused_labels)]
+
+// Simple continue pointing to an unlabeled break should yield in an error
+fn continue_simple() {
+ 'b: {
+ continue; //~ ERROR unlabeled `continue` inside of a labeled block
+ }
+}
+
+// Labeled continue pointing to an unlabeled break should yield in an error
+fn continue_labeled() {
+ 'b: {
+ continue 'b; //~ ERROR `continue` pointing to a labeled block
+ }
+}
+
+// Simple continue that would cross a labeled block should yield in an error
+fn continue_crossing() {
+ loop {
+ 'b: {
+ continue; //~ ERROR unlabeled `continue` inside of a labeled block
+ }
+ }
+}
+
+pub fn main() {}