]> git.lizzy.rs Git - rust.git/commitdiff
add tests
authorb-naber <bn263@gmx.de>
Wed, 2 Nov 2022 12:49:42 +0000 (13:49 +0100)
committerb-naber <bn263@gmx.de>
Wed, 23 Nov 2022 18:59:00 +0000 (19:59 +0100)
src/test/ui/mir/field-ty-ascription.rs [new file with mode: 0644]

diff --git a/src/test/ui/mir/field-ty-ascription.rs b/src/test/ui/mir/field-ty-ascription.rs
new file mode 100644 (file)
index 0000000..4147f05
--- /dev/null
@@ -0,0 +1,21 @@
+// build-pass
+
+struct Foo<T>(T); // `T` is covariant.
+
+fn foo<'b>(x: Foo<for<'a> fn(&'a ())>) {
+    let Foo(y): Foo<fn(&'b ())> = x;
+}
+
+fn foo_nested<'b>(x: Foo<Foo<for<'a> fn(&'a ())>>) {
+    let Foo(Foo(y)): Foo<Foo<fn(&'b ())>> = x;
+}
+
+fn tuple<'b>(x: (u32, for<'a> fn(&'a ()))) {
+    let (_, y): (u32, fn(&'b ())) = x;
+}
+
+fn tuple_nested<'b>(x: (u32, (u32, for<'a> fn(&'a ())))) {
+    let (_, (_, y)): (u32, (u32, fn(&'b ()))) = x;
+}
+
+fn main() {}