From: Arthur Cohen Date: Fri, 21 Apr 2023 09:22:52 +0000 (+0200) Subject: gccrs: patterns: Add execution testcases to verify proper pattern matching X-Git-Tag: basepoints/gcc-15~2627 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=315e267e8be68acd710c8868ca2ba7433d70239b;p=thirdparty%2Fgcc.git gccrs: patterns: Add execution testcases to verify proper pattern matching These testcases are similar to the ones added in #2072 but regarding execution. One more issue was opened from them - #2144 gcc/testsuite/ChangeLog: * rust/execute/torture/issue-1852-1.rs: New test. * rust/execute/torture/issue-1852.rs: New test. --- diff --git a/gcc/testsuite/rust/execute/torture/issue-1852-1.rs b/gcc/testsuite/rust/execute/torture/issue-1852-1.rs new file mode 100644 index 000000000000..1286c1b7bb21 --- /dev/null +++ b/gcc/testsuite/rust/execute/torture/issue-1852-1.rs @@ -0,0 +1,15 @@ +enum Foo { + A, + B(i32), +} + +fn main() -> i32 { + let result = Foo::A; + + let value = match result { + Foo::A => 15, + Foo::B(x) => x, + }; + + value - 15 +} diff --git a/gcc/testsuite/rust/execute/torture/issue-1852.rs b/gcc/testsuite/rust/execute/torture/issue-1852.rs new file mode 100644 index 000000000000..a8bf128891dc --- /dev/null +++ b/gcc/testsuite/rust/execute/torture/issue-1852.rs @@ -0,0 +1,15 @@ +enum Foo { + A, + B(i32), +} + +fn main() -> i32 { + let result = Foo::B(123); + + let value = match result { + Foo::A => 15, + Foo::B(x) => x, + }; + + value - 123 +}