From 218caa410aa38c29984be31a5229b9fa717560ee Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:19:13 +0200 Subject: Merging upstream version 1.68.2+dfsg1. Signed-off-by: Daniel Baumann --- .../ui/variance/variance-use-invariant-struct-1.rs | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 tests/ui/variance/variance-use-invariant-struct-1.rs (limited to 'tests/ui/variance/variance-use-invariant-struct-1.rs') diff --git a/tests/ui/variance/variance-use-invariant-struct-1.rs b/tests/ui/variance/variance-use-invariant-struct-1.rs new file mode 100644 index 000000000..72f50f345 --- /dev/null +++ b/tests/ui/variance/variance-use-invariant-struct-1.rs @@ -0,0 +1,23 @@ +// Test various uses of structs with distinct variances to make sure +// they permit lifetimes to be approximated as expected. + +struct SomeStruct(*mut T); + +fn foo<'min,'max>(v: SomeStruct<&'max ()>) + -> SomeStruct<&'min ()> + where 'max : 'min +{ + v + //~^ ERROR lifetime may not live long enough +} + +fn bar<'min,'max>(v: SomeStruct<&'min ()>) + -> SomeStruct<&'max ()> + where 'max : 'min +{ + v + //~^ ERROR lifetime may not live long enough +} + + +fn main() { } -- cgit v1.2.3