diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:03 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:03 +0000 |
commit | 64d98f8ee037282c35007b64c2649055c56af1db (patch) | |
tree | 5492bcf97fce41ee1c0b1cc2add283f3e66cdab0 /src/test/ui/unboxed-closures/unboxed-closure-sugar-region.rs | |
parent | Adding debian version 1.67.1+dfsg1-1. (diff) | |
download | rustc-64d98f8ee037282c35007b64c2649055c56af1db.tar.xz rustc-64d98f8ee037282c35007b64c2649055c56af1db.zip |
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/unboxed-closures/unboxed-closure-sugar-region.rs')
-rw-r--r-- | src/test/ui/unboxed-closures/unboxed-closure-sugar-region.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/src/test/ui/unboxed-closures/unboxed-closure-sugar-region.rs b/src/test/ui/unboxed-closures/unboxed-closure-sugar-region.rs deleted file mode 100644 index 65f40075b..000000000 --- a/src/test/ui/unboxed-closures/unboxed-closure-sugar-region.rs +++ /dev/null @@ -1,36 +0,0 @@ -// Test interaction between unboxed closure sugar and region -// parameters (should be exactly as if angle brackets were used -// and regions omitted). - -#![feature(unboxed_closures)] -#![allow(dead_code)] - -use std::marker; - -trait Foo<'a,T> { - type Output; - fn dummy(&'a self) -> &'a (T,Self::Output); -} - -trait Eq<X: ?Sized> { fn is_of_eq_type(&self, x: &X) -> bool { true } } -impl<X: ?Sized> Eq<X> for X { } -fn eq<A: ?Sized,B: ?Sized +Eq<A>>() { } - -fn same_type<A,B:Eq<A>>(a: A, b: B) { } - -fn test<'a,'b>() { - // Parens are equivalent to omitting default in angle. - eq::< dyn Foo<(isize,),Output=()>, dyn Foo(isize) >(); - - // Here we specify 'static explicitly in angle-bracket version. - // Parenthesized winds up getting inferred. - eq::< dyn Foo<'static, (isize,),Output=()>, dyn Foo(isize) >(); -} - -fn test2(x: &dyn Foo<(isize,),Output=()>, y: &dyn Foo(isize)) { - //~^ ERROR this trait takes 1 lifetime argument but 0 lifetime arguments were supplied - // Here, the omitted lifetimes are expanded to distinct things. - same_type(x, y) -} - -fn main() { } |