diff options
Diffstat (limited to '')
-rw-r--r-- | tests/ui/impl-trait/auto-trait.rs | 25 |
1 files changed, 0 insertions, 25 deletions
diff --git a/tests/ui/impl-trait/auto-trait.rs b/tests/ui/impl-trait/auto-trait.rs deleted file mode 100644 index 35994e4a5..000000000 --- a/tests/ui/impl-trait/auto-trait.rs +++ /dev/null @@ -1,25 +0,0 @@ -// Tests that type alias impls traits do not leak auto-traits for -// the purposes of coherence checking -#![feature(type_alias_impl_trait)] - -trait OpaqueTrait {} -impl<T> OpaqueTrait for T {} -type OpaqueType = impl OpaqueTrait; -fn mk_opaque() -> OpaqueType { - () -} - -#[derive(Debug)] -struct D<T>(T); - -trait AnotherTrait {} -impl<T: Send> AnotherTrait for T {} - -// This is in error, because we cannot assume that `OpaqueType: !Send`. -// (We treat opaque types as "foreign types" that could grow more impls -// in the future.) -impl AnotherTrait for D<OpaqueType> { - //~^ ERROR conflicting implementations of trait `AnotherTrait` for type `D<OpaqueType>` -} - -fn main() {} |