summaryrefslogtreecommitdiffstats
path: root/tests/ui/closures/closure_cap_coerce_many_fail.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/closures/closure_cap_coerce_many_fail.stderr')
-rw-r--r--tests/ui/closures/closure_cap_coerce_many_fail.stderr82
1 files changed, 82 insertions, 0 deletions
diff --git a/tests/ui/closures/closure_cap_coerce_many_fail.stderr b/tests/ui/closures/closure_cap_coerce_many_fail.stderr
new file mode 100644
index 000000000..ca8a43328
--- /dev/null
+++ b/tests/ui/closures/closure_cap_coerce_many_fail.stderr
@@ -0,0 +1,82 @@
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/closure_cap_coerce_many_fail.rs:9:16
+ |
+LL | let _ = match "+" {
+ | _____________-
+LL | | "+" => add,
+ | | --- this is found to be of type `fn(i32, i32) -> i32 {add}`
+LL | | "-" => |a, b| (a - b + cap) as i32,
+ | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected fn item, found closure
+LL | | _ => unimplemented!(),
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+ = note: expected fn item `fn(i32, i32) -> i32 {add}`
+ found closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:9:16: 9:22]`
+
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/closure_cap_coerce_many_fail.rs:18:16
+ |
+LL | let _ = match "+" {
+ | _____________-
+LL | | "+" => |a, b| (a + b) as i32,
+ | | ---------------------
+ | | |
+ | | the expected closure
+ | | this is found to be of type `[closure@$DIR/closure_cap_coerce_many_fail.rs:17:16: 17:22]`
+LL | | "-" => |a, b| (a - b + cap) as i32,
+ | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected closure, found a different closure
+LL | | _ => unimplemented!(),
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+ = note: expected closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:17:16: 17:22]`
+ found closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:18:16: 18:22]`
+ = note: no two closures, even if identical, have the same type
+ = help: consider boxing your closure and/or using it as a trait object
+
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/closure_cap_coerce_many_fail.rs:27:16
+ |
+LL | let _ = match "+" {
+ | _____________-
+LL | | "+" => |a, b| (a + b + cap) as i32,
+ | | ---------------------------
+ | | |
+ | | the expected closure
+ | | this is found to be of type `[closure@$DIR/closure_cap_coerce_many_fail.rs:26:16: 26:22]`
+LL | | "-" => |a, b| (a - b) as i32,
+ | | ^^^^^^^^^^^^^^^^^^^^^ expected closure, found a different closure
+LL | | _ => unimplemented!(),
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+ = note: expected closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:26:16: 26:22]`
+ found closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:27:16: 27:22]`
+ = note: no two closures, even if identical, have the same type
+ = help: consider boxing your closure and/or using it as a trait object
+
+error[E0308]: `match` arms have incompatible types
+ --> $DIR/closure_cap_coerce_many_fail.rs:35:16
+ |
+LL | let _ = match "+" {
+ | _____________-
+LL | | "+" => |a, b| (a + b + cap) as i32,
+ | | ---------------------------
+ | | |
+ | | the expected closure
+ | | this is found to be of type `[closure@$DIR/closure_cap_coerce_many_fail.rs:34:16: 34:22]`
+LL | | "-" => |a, b| (a - b + cap) as i32,
+ | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected closure, found a different closure
+LL | | _ => unimplemented!(),
+LL | | };
+ | |_____- `match` arms have incompatible types
+ |
+ = note: expected closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:34:16: 34:22]`
+ found closure `[closure@$DIR/closure_cap_coerce_many_fail.rs:35:16: 35:22]`
+ = note: no two closures, even if identical, have the same type
+ = help: consider boxing your closure and/or using it as a trait object
+
+error: aborting due to 4 previous errors
+
+For more information about this error, try `rustc --explain E0308`.