diff options
Diffstat (limited to 'tests/ui/rfcs/rfc-2093-infer-outlives/issue-54467.rs')
-rw-r--r-- | tests/ui/rfcs/rfc-2093-infer-outlives/issue-54467.rs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/ui/rfcs/rfc-2093-infer-outlives/issue-54467.rs b/tests/ui/rfcs/rfc-2093-infer-outlives/issue-54467.rs new file mode 100644 index 000000000..c712f15e3 --- /dev/null +++ b/tests/ui/rfcs/rfc-2093-infer-outlives/issue-54467.rs @@ -0,0 +1,17 @@ +// Regression test for #54467: +// +// Here, the trait object has an "inferred outlives" requirement that +// `<Self as MyIterator<'a>>::Item: 'a`; but since we don't know what +// `Self` is, we were (incorrectly) messing things up, leading to +// strange errors. This test ensures that we do not give compilation +// errors. +// +// check-pass + +trait MyIterator<'a>: Iterator where Self::Item: 'a { } + +struct MyStruct<'a, A> { + item: Box<dyn MyIterator<'a, Item = A>> +} + +fn main() { } |