summaryrefslogtreecommitdiffstats
path: root/src/test/ui/impl-trait/issues/issue-74282.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/impl-trait/issues/issue-74282.stderr')
-rw-r--r--src/test/ui/impl-trait/issues/issue-74282.stderr40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/test/ui/impl-trait/issues/issue-74282.stderr b/src/test/ui/impl-trait/issues/issue-74282.stderr
new file mode 100644
index 000000000..5b05fb281
--- /dev/null
+++ b/src/test/ui/impl-trait/issues/issue-74282.stderr
@@ -0,0 +1,40 @@
+error[E0308]: mismatched types
+ --> $DIR/issue-74282.rs:8:15
+ |
+LL | type Closure = impl Fn() -> u64;
+ | ---------------- the expected opaque type
+...
+LL | Anonymous(|| {
+ | _____---------_^
+ | | |
+ | | arguments to this struct are incorrect
+LL | | 3
+LL | | })
+ | |_____^ expected closure, found a different closure
+ |
+ = note: expected opaque type `Closure`
+ found closure `[closure@$DIR/issue-74282.rs:8:15: 8:17]`
+ = note: no two closures, even if identical, have the same type
+ = help: consider boxing your closure and/or using it as a trait object
+note: tuple struct defined here
+ --> $DIR/issue-74282.rs:4:8
+ |
+LL | struct Anonymous(Closure);
+ | ^^^^^^^^^
+
+error[E0308]: mismatched types
+ --> $DIR/issue-74282.rs:8:5
+ |
+LL | fn main() {
+ | - expected `()` because of default return type
+LL | let y = || -> Closure { || 3 };
+LL | / Anonymous(|| {
+LL | | 3
+LL | | })
+ | | ^- help: consider using a semicolon here: `;`
+ | |______|
+ | expected `()`, found struct `Anonymous`
+
+error: aborting due to 2 previous errors
+
+For more information about this error, try `rustc --explain E0308`.