diff options
Diffstat (limited to 'src/test/ui/label/label_break_value_continue.rs')
-rw-r--r-- | src/test/ui/label/label_break_value_continue.rs | 27 |
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() {} |