summaryrefslogtreecommitdiffstats
path: root/tests/ui/traits/object/auto-dedup-in-impl.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/traits/object/auto-dedup-in-impl.rs')
-rw-r--r--tests/ui/traits/object/auto-dedup-in-impl.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/ui/traits/object/auto-dedup-in-impl.rs b/tests/ui/traits/object/auto-dedup-in-impl.rs
new file mode 100644
index 000000000..85698f194
--- /dev/null
+++ b/tests/ui/traits/object/auto-dedup-in-impl.rs
@@ -0,0 +1,19 @@
+// Checks to make sure that `dyn Trait + Send` and `dyn Trait + Send + Send` are the same type.
+// Issue: #47010
+
+struct Struct;
+impl Trait for Struct {}
+trait Trait {}
+
+type Send1 = dyn Trait + Send;
+type Send2 = dyn Trait + Send + Send;
+
+fn main () {}
+
+impl dyn Trait + Send {
+ fn test(&self) { println!("one"); } //~ ERROR duplicate definitions with name `test`
+}
+
+impl dyn Trait + Send + Send {
+ fn test(&self) { println!("two"); }
+}