diff options
author | Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com> | 2024-05-21 18:29:08 +0200 |
---|---|---|
committer | P-E-P <32375388+P-E-P@users.noreply.github.com> | 2024-06-12 11:11:56 +0000 |
commit | f88aa88faf491f6855e01da1062b8db184d74997 (patch) | |
tree | 1af21aea597378993c022ddb914367189b66f252 /gcc | |
parent | 956542656fe2fc39c14b99b87ef2cae21928d6e6 (diff) | |
download | gcc-f88aa88faf491f6855e01da1062b8db184d74997.zip gcc-f88aa88faf491f6855e01da1062b8db184d74997.tar.gz gcc-f88aa88faf491f6855e01da1062b8db184d74997.tar.bz2 |
Add regression tests for exclusive range pattern
Add a few test to check the exclusive range pattern feature. This feature
is experimental and shall not be enabled in stable rust.
gcc/testsuite/ChangeLog:
* rust/compile/exclusive_range_pattern.rs: New test.
* rust/compile/exclusive_range_pattern_feature_gate.rs: New test.
Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/rust/compile/exclusive_range_pattern.rs | 17 | ||||
-rw-r--r-- | gcc/testsuite/rust/compile/exclusive_range_pattern_feature_gate.rs | 8 |
2 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/rust/compile/exclusive_range_pattern.rs b/gcc/testsuite/rust/compile/exclusive_range_pattern.rs new file mode 100644 index 0000000..4840abe --- /dev/null +++ b/gcc/testsuite/rust/compile/exclusive_range_pattern.rs @@ -0,0 +1,17 @@ +// { dg-options "-fsyntax-only" } +#![feature(exclusive_range_pattern)] + +const TEN: usize = 10; + +fn test(n: usize) { + match n { + 0..TEN => (), + TEN..20 => (), + 20..30 => (), + _ => (), + } +} + +fn test2(t: usize) { + if let 0..10 = t {} +} diff --git a/gcc/testsuite/rust/compile/exclusive_range_pattern_feature_gate.rs b/gcc/testsuite/rust/compile/exclusive_range_pattern_feature_gate.rs new file mode 100644 index 0000000..4530214 --- /dev/null +++ b/gcc/testsuite/rust/compile/exclusive_range_pattern_feature_gate.rs @@ -0,0 +1,8 @@ +// { dg-options "-frust-compile-until=lowering" } + +fn test(n: usize) { + match n { + 0..10 => (), //{ dg-error "exclusive range pattern syntax is experimental." "" { target *-*-* } } + _ => (), + } +} |