diff options
Diffstat (limited to 'tests/ui/generic-associated-types/issue-88595.rs')
-rw-r--r-- | tests/ui/generic-associated-types/issue-88595.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/ui/generic-associated-types/issue-88595.rs b/tests/ui/generic-associated-types/issue-88595.rs new file mode 100644 index 000000000..24641ee1f --- /dev/null +++ b/tests/ui/generic-associated-types/issue-88595.rs @@ -0,0 +1,21 @@ +#![feature(type_alias_impl_trait)] + +fn main() {} + +trait A<'a> { + type B<'b>: Clone + // FIXME(generic_associated_types): Remove one of the below bounds + // https://github.com/rust-lang/rust/pull/90678#discussion_r744976085 + where + Self: 'a, Self: 'b; + + fn a(&'a self) -> Self::B<'a>; +} + +struct C; + +impl<'a> A<'a> for C { + type B<'b> = impl Clone; + + fn a(&'a self) -> Self::B<'a> {} //~ ERROR: non-defining opaque type use in defining scope +} |