about summary refs log tree commit diff
path: root/tests/ui/destructuring-assignment/nested_destructure.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/destructuring-assignment/nested_destructure.rs')
-rw-r--r--tests/ui/destructuring-assignment/nested_destructure.rs18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/ui/destructuring-assignment/nested_destructure.rs b/tests/ui/destructuring-assignment/nested_destructure.rs
new file mode 100644
index 00000000000..94b3a5ff9a7
--- /dev/null
+++ b/tests/ui/destructuring-assignment/nested_destructure.rs
@@ -0,0 +1,18 @@
+// run-pass
+
+struct Struct<S, T> {
+    a: S,
+    b: T,
+}
+
+struct TupleStruct<S, T>(S, T);
+
+fn main() {
+    let (a, b, c, d);
+    Struct { a: TupleStruct((a, b), c), b: [d] } =
+        Struct { a: TupleStruct((0, 1), 2), b: [3] };
+    assert_eq!((a, b, c, d), (0, 1, 2, 3));
+
+    // unnested underscore: just discard
+    _ = 1;
+}