summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/trait-upcasting/deref-upcast-behavioral-change.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/traits/trait-upcasting/deref-upcast-behavioral-change.stderr')
-rw-r--r--tests/ui/traits/trait-upcasting/deref-upcast-behavioral-change.stderr19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/ui/traits/trait-upcasting/deref-upcast-behavioral-change.stderr b/tests/ui/traits/trait-upcasting/deref-upcast-behavioral-change.stderr
new file mode 100644
index 000000000..fa93e28c7
--- /dev/null
+++ b/tests/ui/traits/trait-upcasting/deref-upcast-behavioral-change.stderr
@@ -0,0 +1,19 @@
+error: this `Deref` implementation is covered by an implicit supertrait coercion
+ --> $DIR/deref-upcast-behavioral-change.rs:17:1
+ |
+LL | impl<'a> Deref for dyn Foo + 'a {
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `dyn Foo` implements `Deref<Target = dyn Bar<u32>>` which conflicts with supertrait `Bar<i32>`
+...
+LL | type Target = dyn Bar<u32> + 'a;
+ | -------------------------------- target type is a supertrait of `dyn Foo`
+ |
+ = warning: this will change its meaning in a future release!
+ = note: for more information, see issue #89460 <https://github.com/rust-lang/rust/issues/89460>
+note: the lint level is defined here
+ --> $DIR/deref-upcast-behavioral-change.rs:1:9
+ |
+LL | #![deny(deref_into_dyn_supertrait)]
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 1 previous error
+