@@ -40,3 +40,56 @@ LL | unsafe impl Trait for dyn (::std::marker::Sync) + Send + Sync { }
4040
4141warning: 3 warnings emitted
4242
43+ Future incompatibility report: Future breakage diagnostic:
44+ warning: conflicting implementations of trait `Trait` for type `(dyn std::marker::Send + std::marker::Sync + 'static)`: (E0119)
45+ --> $DIR/issue-33140-traitobject-crate.rs:86:1
46+ |
47+ LL | unsafe impl Trait for dyn (::std::marker::Send) + Sync { }
48+ | ------------------------------------------------------ first implementation here
49+ LL | unsafe impl Trait for dyn (::std::marker::Send) + Send + Sync { }
50+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn std::marker::Send + std::marker::Sync + 'static)`
51+ |
52+ = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
53+ = note: for more information, see issue #56484 <https://github.com/rust-lang/rust/issues/56484>
54+ note: the lint level is defined here
55+ --> $DIR/issue-33140-traitobject-crate.rs:3:9
56+ |
57+ LL | #![warn(order_dependent_trait_objects)]
58+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
59+
60+ Future breakage diagnostic:
61+ warning: conflicting implementations of trait `Trait` for type `(dyn std::marker::Send + std::marker::Sync + 'static)`: (E0119)
62+ --> $DIR/issue-33140-traitobject-crate.rs:89:1
63+ |
64+ LL | unsafe impl Trait for dyn (::std::marker::Send) + Send + Sync { }
65+ | ------------------------------------------------------------- first implementation here
66+ ...
67+ LL | unsafe impl Trait for dyn (::std::marker::Sync) + Send { }
68+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn std::marker::Send + std::marker::Sync + 'static)`
69+ |
70+ = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
71+ = note: for more information, see issue #56484 <https://github.com/rust-lang/rust/issues/56484>
72+ note: the lint level is defined here
73+ --> $DIR/issue-33140-traitobject-crate.rs:3:9
74+ |
75+ LL | #![warn(order_dependent_trait_objects)]
76+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
77+
78+ Future breakage diagnostic:
79+ warning: conflicting implementations of trait `Trait` for type `(dyn std::marker::Send + std::marker::Sync + 'static)`: (E0119)
80+ --> $DIR/issue-33140-traitobject-crate.rs:93:1
81+ |
82+ LL | unsafe impl Trait for dyn (::std::marker::Sync) + Send { }
83+ | ------------------------------------------------------ first implementation here
84+ ...
85+ LL | unsafe impl Trait for dyn (::std::marker::Sync) + Send + Sync { }
86+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `(dyn std::marker::Send + std::marker::Sync + 'static)`
87+ |
88+ = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
89+ = note: for more information, see issue #56484 <https://github.com/rust-lang/rust/issues/56484>
90+ note: the lint level is defined here
91+ --> $DIR/issue-33140-traitobject-crate.rs:3:9
92+ |
93+ LL | #![warn(order_dependent_trait_objects)]
94+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
95+
0 commit comments