diff options
Diffstat (limited to 'tests/ui/traits/associated_type_bound/assoc_type_bound_with_struct.rs')
-rw-r--r-- | tests/ui/traits/associated_type_bound/assoc_type_bound_with_struct.rs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/ui/traits/associated_type_bound/assoc_type_bound_with_struct.rs b/tests/ui/traits/associated_type_bound/assoc_type_bound_with_struct.rs new file mode 100644 index 000000000..471a6b836 --- /dev/null +++ b/tests/ui/traits/associated_type_bound/assoc_type_bound_with_struct.rs @@ -0,0 +1,23 @@ +trait Bar { + type Baz; +} + +struct Foo<T> where T: Bar, <T as Bar>::Baz: String { //~ ERROR expected trait, found struct + t: T, +} + +struct Qux<'a, T> where T: Bar, <&'a T as Bar>::Baz: String { //~ ERROR expected trait, found struct + t: &'a T, +} + +fn foo<T: Bar>(_: T) where <T as Bar>::Baz: String { //~ ERROR expected trait, found struct +} + +fn qux<'a, T: Bar>(_: &'a T) where <&'a T as Bar>::Baz: String { //~ ERROR expected trait, found +} + +fn issue_95327() where <u8 as Unresolved>::Assoc: String {} +//~^ ERROR expected trait, found struct +//~| ERROR use of undeclared type `Unresolved` + +fn main() {} |