]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: testsuite: adds some tests for ice 4375
authorlenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr>
Wed, 14 Jan 2026 13:44:59 +0000 (13:44 +0000)
committerArthur Cohen <arthur.cohen@embecosm.com>
Fri, 27 Feb 2026 14:57:07 +0000 (15:57 +0100)
Added new tests.

Addresses Rust-GCC/gccrs#4375

gcc/testsuite/ChangeLog:

* rust/compile/issue-4375-ice-regression.rs: New test.
* rust/compile/issue-4375-multiple-errors.rs: New test.
* rust/compile/issue-4375-tuple-pattern.rs: New test.

Signed-off-by: lenny.chiadmi-delage <lenny.chiadmi-delage@epita.fr>
gcc/testsuite/rust/compile/issue-4375-ice-regression.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/issue-4375-multiple-errors.rs [new file with mode: 0644]
gcc/testsuite/rust/compile/issue-4375-tuple-pattern.rs [new file with mode: 0644]

diff --git a/gcc/testsuite/rust/compile/issue-4375-ice-regression.rs b/gcc/testsuite/rust/compile/issue-4375-ice-regression.rs
new file mode 100644 (file)
index 0000000..df02f85
--- /dev/null
@@ -0,0 +1,8 @@
+fn get_forty_two() -> i32 {
+    return 42;
+}
+
+fn main() {
+    let myname = get_forty_two() else { return () };
+    // { dg-warning "unused name" "" { target *-*-* } .-1 }
+}
diff --git a/gcc/testsuite/rust/compile/issue-4375-multiple-errors.rs b/gcc/testsuite/rust/compile/issue-4375-multiple-errors.rs
new file mode 100644 (file)
index 0000000..885253d
--- /dev/null
@@ -0,0 +1,24 @@
+fn foo() -> i32 {
+    1
+}
+fn bar() -> i32 {
+    2
+}
+fn baz() -> i32 {
+    3
+}
+
+fn main() {
+    let a = foo() else {
+        // { dg-warning "unused name" "" { target *-*-* } .-1 }
+        return ();
+    };
+    let b = bar() else {
+        // { dg-warning "unused name" "" { target *-*-* } .-1 }
+        return ();
+    };
+    let c = baz() else {
+        // { dg-warning "unused name" "" { target *-*-* } .-1 }
+        return ();
+    };
+}
diff --git a/gcc/testsuite/rust/compile/issue-4375-tuple-pattern.rs b/gcc/testsuite/rust/compile/issue-4375-tuple-pattern.rs
new file mode 100644 (file)
index 0000000..a13ba74
--- /dev/null
@@ -0,0 +1,10 @@
+fn get_tuple() -> (i32, i32) {
+    (5, 10)
+}
+
+fn main() {
+    let (x, y) = get_tuple() else {
+        // { dg-warning "unused name" "" { target *-*-* } .-1 }
+        return;
+    };
+}