summaryrefslogtreecommitdiffstats
path: root/tests/ui/loops/loop-break-value.stderr
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--tests/ui/loops/loop-break-value.stderr153
1 files changed, 146 insertions, 7 deletions
diff --git a/tests/ui/loops/loop-break-value.stderr b/tests/ui/loops/loop-break-value.stderr
index 5525dbb90..6c83bc757 100644
--- a/tests/ui/loops/loop-break-value.stderr
+++ b/tests/ui/loops/loop-break-value.stderr
@@ -1,3 +1,21 @@
+warning: label name `'a` shadows a label name that is already in scope
+ --> $DIR/loop-break-value.rs:136:17
+ |
+LL | 'a: loop {
+ | -- first declared here
+LL | break;
+LL | let _ = 'a: loop {
+ | ^^ label `'a` already in scope
+
+warning: label name `'a` shadows a label name that is already in scope
+ --> $DIR/loop-break-value.rs:148:17
+ |
+LL | 'a: loop {
+ | -- first declared here
+LL | break;
+LL | let _ = 'a: loop {
+ | ^^ label `'a` already in scope
+
error[E0425]: cannot find value `LOOP` in this scope
--> $DIR/loop-break-value.rs:95:15
|
@@ -134,7 +152,10 @@ error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:4:31
|
LL | let val: ! = loop { break break; };
- | ^^^^^ expected `!`, found `()`
+ | --- ---- ^^^^^ expected `!`, found `()`
+ | | |
+ | | this loop is expected to be of type `!`
+ | expected because of this assignment
|
= note: expected type `!`
found unit type `()`
@@ -142,24 +163,38 @@ LL | let val: ! = loop { break break; };
error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:11:19
|
+LL | break "asdf";
+ | ------------ expected because of this `break`
+LL | } else {
LL | break 123;
| ^^^ expected `&str`, found integer
error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:16:15
|
+LL | let _: i32 = loop {
+ | - ---- this loop is expected to be of type `i32`
+ | |
+ | expected because of this assignment
LL | break "asdf";
| ^^^^^^ expected `i32`, found `&str`
error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:21:31
|
+LL | let _: i32 = 'outer_loop: loop {
+ | - ---- this loop is expected to be of type `i32`
+ | |
+ | expected because of this assignment
+LL | loop {
LL | break 'outer_loop "nope";
| ^^^^^^ expected `i32`, found `&str`
error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:73:26
|
+LL | break;
+ | ----- expected because of this `break`
LL | break 'c 123;
| ^^^ expected `()`, found integer
@@ -167,7 +202,11 @@ error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:80:15
|
LL | break (break, break);
- | ^^^^^^^^^^^^^^ expected `()`, found `(!, !)`
+ | ^-----^^-----^
+ | || |
+ | || expected because of this `break`
+ | |expected because of this `break`
+ | expected `()`, found `(!, !)`
|
= note: expected unit type `()`
found tuple `(!, !)`
@@ -175,19 +214,119 @@ LL | break (break, break);
error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:85:15
|
+LL | break;
+ | ----- expected because of this `break`
LL | break 2;
| ^ expected `()`, found integer
error[E0308]: mismatched types
--> $DIR/loop-break-value.rs:90:9
|
+LL | break 2;
+ | ------- expected because of this `break`
LL | break;
- | ^^^^^
- | |
- | expected integer, found `()`
- | help: give it a value of the expected type: `break value`
+ | ^^^^^ expected integer, found `()`
+ |
+help: give it a value of the expected type
+ |
+LL | break value;
+ | +++++
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:108:9
+ |
+LL | break 'a 1;
+ | ---------- expected because of this `break`
+...
+LL | break;
+ | ^^^^^ expected integer, found `()`
+ |
+help: give it a value of the expected type
+ |
+LL | break value;
+ | +++++
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:120:9
+ |
+LL | break 'a 1;
+ | ---------- expected because of this `break`
+...
+LL | break 'a;
+ | ^^^^^^^^ expected integer, found `()`
+ |
+help: give it a value of the expected type
+ |
+LL | break 'a value;
+ | +++++
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:131:15
+ |
+LL | break;
+ | ----- expected because of this `break`
+...
+LL | break 2;
+ | ^ expected `()`, found integer
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:140:17
+ |
+LL | break 2;
+ | ------- expected because of this `break`
+LL | loop {
+LL | break 'a;
+ | ^^^^^^^^ expected integer, found `()`
+ |
+help: give it a value of the expected type
+ |
+LL | break 'a value;
+ | +++++
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:143:15
+ |
+LL | break;
+ | ----- expected because of this `break`
+...
+LL | break 2;
+ | ^ expected `()`, found integer
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:152:17
+ |
+LL | break 'a 2;
+ | ---------- expected because of this `break`
+LL | loop {
+LL | break 'a;
+ | ^^^^^^^^ expected integer, found `()`
+ |
+help: give it a value of the expected type
+ |
+LL | break 'a value;
+ | +++++
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:155:15
+ |
+LL | break;
+ | ----- expected because of this `break`
+...
+LL | break 2;
+ | ^ expected `()`, found integer
+
+error[E0308]: mismatched types
+ --> $DIR/loop-break-value.rs:159:15
+ |
+LL | fn main() {
+ | - expected `()` because of this return type
+...
+LL | loop { // point at the return type
+ | ---- this loop is expected to be of type `()`
+LL | break 2;
+ | ^ expected `()`, found integer
-error: aborting due to 17 previous errors; 1 warning emitted
+error: aborting due to 25 previous errors; 3 warnings emitted
Some errors have detailed explanations: E0308, E0425, E0571.
For more information about an error, try `rustc --explain E0308`.