summaryrefslogtreecommitdiffstats
path: root/tests/ui/loops/loop-break-value.stderr
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /tests/ui/loops/loop-break-value.stderr
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tests/ui/loops/loop-break-value.stderr')
-rw-r--r--tests/ui/loops/loop-break-value.stderr193
1 files changed, 193 insertions, 0 deletions
diff --git a/tests/ui/loops/loop-break-value.stderr b/tests/ui/loops/loop-break-value.stderr
new file mode 100644
index 000000000..ccb27c350
--- /dev/null
+++ b/tests/ui/loops/loop-break-value.stderr
@@ -0,0 +1,193 @@
+error[E0425]: cannot find value `LOOP` in this scope
+ --> $DIR/loop-break-value.rs:95:15
+ |
+LL | 'LOOP: for _ in 0 .. 9 {
+ | ----- a label with a similar name exists
+LL | break LOOP;
+ | ^^^^
+ | |
+ | not found in this scope
+ | help: use the similarly named label: `'LOOP`
+
+warning: denote infinite loops with `loop { ... }`
+ --> $DIR/loop-break-value.rs:26:5
+ |
+LL | 'while_loop: while true {
+ | ^^^^^^^^^^^^^^^^^^^^^^^ help: use `loop`
+ |
+ = note: `#[warn(while_true)]` on by default
+
+error[E0571]: `break` with value from a `while` loop
+ --> $DIR/loop-break-value.rs:28:9
+ |
+LL | 'while_loop: while true {
+ | ----------------------- you can't `break` with a value in a `while` loop
+LL | break;
+LL | break ();
+ | ^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `while` loop
+ |
+LL | break;
+ | ~~~~~
+help: alternatively, you might have meant to use the available loop label
+ |
+LL | break 'while_loop;
+ | ~~~~~~~~~~~
+
+error[E0571]: `break` with value from a `while` loop
+ --> $DIR/loop-break-value.rs:30:13
+ |
+LL | 'while_loop: while true {
+ | ----------------------- you can't `break` with a value in a `while` loop
+...
+LL | break 'while_loop 123;
+ | ^^^^^^^^^^^^^^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `while` loop
+ |
+LL | break 'while_loop;
+ | ~~~~~~~~~~~~~~~~~
+
+error[E0571]: `break` with value from a `while` loop
+ --> $DIR/loop-break-value.rs:38:12
+ |
+LL | while let Some(_) = Some(()) {
+ | ---------------------------- you can't `break` with a value in a `while` loop
+LL | if break () {
+ | ^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `while` loop
+ |
+LL | if break {
+ | ~~~~~
+
+error[E0571]: `break` with value from a `while` loop
+ --> $DIR/loop-break-value.rs:43:9
+ |
+LL | while let Some(_) = Some(()) {
+ | ---------------------------- you can't `break` with a value in a `while` loop
+LL | break None;
+ | ^^^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `while` loop
+ |
+LL | break;
+ | ~~~~~
+
+error[E0571]: `break` with value from a `while` loop
+ --> $DIR/loop-break-value.rs:49:13
+ |
+LL | 'while_let_loop: while let Some(_) = Some(()) {
+ | --------------------------------------------- you can't `break` with a value in a `while` loop
+LL | loop {
+LL | break 'while_let_loop "nope";
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `while` loop
+ |
+LL | break 'while_let_loop;
+ | ~~~~~~~~~~~~~~~~~~~~~
+
+error[E0571]: `break` with value from a `for` loop
+ --> $DIR/loop-break-value.rs:56:9
+ |
+LL | for _ in &[1,2,3] {
+ | ----------------- you can't `break` with a value in a `for` loop
+LL | break ();
+ | ^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `for` loop
+ |
+LL | break;
+ | ~~~~~
+
+error[E0571]: `break` with value from a `for` loop
+ --> $DIR/loop-break-value.rs:57:9
+ |
+LL | for _ in &[1,2,3] {
+ | ----------------- you can't `break` with a value in a `for` loop
+LL | break ();
+LL | break [()];
+ | ^^^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `for` loop
+ |
+LL | break;
+ | ~~~~~
+
+error[E0571]: `break` with value from a `for` loop
+ --> $DIR/loop-break-value.rs:64:13
+ |
+LL | 'for_loop: for _ in &[1,2,3] {
+ | ---------------------------- you can't `break` with a value in a `for` loop
+...
+LL | break 'for_loop Some(17);
+ | ^^^^^^^^^^^^^^^^^^^^^^^^ can only break with a value inside `loop` or breakable block
+ |
+help: use `break` on its own without a value inside this `for` loop
+ |
+LL | break 'for_loop;
+ | ~~~~~~~~~~~~~~~
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:4:31
+ |
+LL | let val: ! = loop { break break; };
+ | ^^^^^ expected `!`, found `()`
+ |
+ = note: expected type `!`
+ found unit type `()`
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:11:19
+ |
+LL | break 123;
+ | ^^^ expected `&str`, found integer
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:16:15
+ |
+LL | break "asdf";
+ | ^^^^^^ expected `i32`, found `&str`
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:21:31
+ |
+LL | break 'outer_loop "nope";
+ | ^^^^^^ expected `i32`, found `&str`
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:73:26
+ |
+LL | break 'c 123;
+ | ^^^ expected `()`, found integer
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:80:15
+ |
+LL | break (break, break);
+ | ^^^^^^^^^^^^^^ expected `()`, found tuple
+ |
+ = note: expected unit type `()`
+ found tuple `(!, !)`
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:85:15
+ |
+LL | break 2;
+ | ^ expected `()`, found integer
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:90:9
+ |
+LL | break;
+ | ^^^^^
+ | |
+ | expected integer, found `()`
+ | help: give it a value of the expected type: `break value`
+
+error: aborting due to 17 previous errors; 1 warning emitted
+
+Some errors have detailed explanations: E0308, E0425, E0571.
+For more information about an error, try `rustc --explain E0308`.