Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-def/src/macro_expansion_tests/mbe.rs')
-rw-r--r--crates/hir-def/src/macro_expansion_tests/mbe.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/crates/hir-def/src/macro_expansion_tests/mbe.rs b/crates/hir-def/src/macro_expansion_tests/mbe.rs
index c5c26e26bc..4058159cef 100644
--- a/crates/hir-def/src/macro_expansion_tests/mbe.rs
+++ b/crates/hir-def/src/macro_expansion_tests/mbe.rs
@@ -1883,3 +1883,41 @@ fn test() {
"#]],
);
}
+
+#[test]
+fn test_pat_fragment_eof_17441() {
+ check(
+ r#"
+macro_rules! matches {
+ ($expression:expr, $pattern:pat $(if $guard:expr)? ) => {
+ match $expression {
+ $pattern $(if $guard)? => true,
+ _ => false
+ }
+ };
+}
+fn f() {
+ matches!(0, 10..);
+ matches!(0, 10.. if true);
+}
+ "#,
+ expect![[r#"
+macro_rules! matches {
+ ($expression:expr, $pattern:pat $(if $guard:expr)? ) => {
+ match $expression {
+ $pattern $(if $guard)? => true,
+ _ => false
+ }
+ };
+}
+fn f() {
+ match 0 {
+ 10.. =>true , _=>false
+ };
+ match 0 {
+ 10..if true =>true , _=>false
+ };
+}
+ "#]],
+ );
+}