summaryrefslogtreecommitdiffstats
path: root/src/test/ui/suggestions/suggest-swapping-self-ty-and-trait.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/suggestions/suggest-swapping-self-ty-and-trait.rs')
-rw-r--r--src/test/ui/suggestions/suggest-swapping-self-ty-and-trait.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/ui/suggestions/suggest-swapping-self-ty-and-trait.rs b/src/test/ui/suggestions/suggest-swapping-self-ty-and-trait.rs
new file mode 100644
index 000000000..947bc2c79
--- /dev/null
+++ b/src/test/ui/suggestions/suggest-swapping-self-ty-and-trait.rs
@@ -0,0 +1,21 @@
+pub trait Trait<'a, T> {}
+
+pub struct Struct<T>;
+pub enum Enum<T> {}
+
+pub union Union<T> {
+ f1: usize,
+}
+
+impl<'a, T> Struct<T> for Trait<'a, T> {}
+//~^ ERROR expected trait, found struct `Struct`
+//~| WARNING trait objects without an explicit `dyn` are deprecated
+//~| WARNING this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
+
+impl<'a, T> Enum<T> for Trait<'a, T> {}
+//~^ ERROR expected trait, found enum `Enum`
+
+impl<'a, T> Union<T> for Trait<'a, T> {}
+//~^ ERROR expected trait, found union `Union`
+
+fn main() {}