summaryrefslogtreecommitdiffstats
path: root/src/test/ui/impl-trait/equality.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/impl-trait/equality.stderr')
-rw-r--r--src/test/ui/impl-trait/equality.stderr41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/test/ui/impl-trait/equality.stderr b/src/test/ui/impl-trait/equality.stderr
new file mode 100644
index 000000000..f14b447b0
--- /dev/null
+++ b/src/test/ui/impl-trait/equality.stderr
@@ -0,0 +1,41 @@
+warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
+ --> $DIR/equality.rs:1:12
+ |
+LL | #![feature(specialization)]
+ | ^^^^^^^^^^^^^^
+ |
+ = note: `#[warn(incomplete_features)]` on by default
+ = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
+ = help: consider using `min_specialization` instead, which is more stable and complete
+
+error[E0308]: mismatched types
+ --> $DIR/equality.rs:15:5
+ |
+LL | fn two(x: bool) -> impl Foo {
+ | -------- expected `_` because of return type
+...
+LL | 0_u32
+ | ^^^^^ expected `i32`, found `u32`
+
+error[E0277]: cannot add `impl Foo` to `u32`
+ --> $DIR/equality.rs:24:11
+ |
+LL | n + sum_to(n - 1)
+ | ^ no implementation for `u32 + impl Foo`
+ |
+ = help: the trait `Add<impl Foo>` is not implemented for `u32`
+ = help: the following other types implement trait `Add<Rhs>`:
+ <&'a f32 as Add<f32>>
+ <&'a f64 as Add<f64>>
+ <&'a i128 as Add<i128>>
+ <&'a i16 as Add<i16>>
+ <&'a i32 as Add<i32>>
+ <&'a i64 as Add<i64>>
+ <&'a i8 as Add<i8>>
+ <&'a isize as Add<isize>>
+ and 48 others
+
+error: aborting due to 2 previous errors; 1 warning emitted
+
+Some errors have detailed explanations: E0277, E0308.
+For more information about an error, try `rustc --explain E0277`.