summaryrefslogtreecommitdiffstats
path: root/src/test/ui/traits/alias/issue-83613.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/traits/alias/issue-83613.rs')
-rw-r--r--src/test/ui/traits/alias/issue-83613.rs13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/test/ui/traits/alias/issue-83613.rs b/src/test/ui/traits/alias/issue-83613.rs
new file mode 100644
index 000000000..04320e720
--- /dev/null
+++ b/src/test/ui/traits/alias/issue-83613.rs
@@ -0,0 +1,13 @@
+#![feature(type_alias_impl_trait)]
+trait OpaqueTrait {}
+impl<T> OpaqueTrait for T {}
+type OpaqueType = impl OpaqueTrait;
+fn mk_opaque() -> OpaqueType {
+ || 0
+}
+trait AnotherTrait {}
+impl<T: Send> AnotherTrait for T {}
+impl AnotherTrait for OpaqueType {}
+//~^ ERROR conflicting implementations of trait `AnotherTrait` for type `OpaqueType`
+//~| ERROR cannot implement trait on type alias impl trait
+fn main() {}