aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>2023-03-01 11:00:29 +0100
committerPhilip Herron <philip.herron@embecosm.com>2023-03-01 21:31:47 +0000
commit0e41289aa52993a6d4844e7458dc4cb08e4618ad (patch)
treedc7fe23486cbaa0b89df8c8144b9071f536602bb
parenta2ef9ad25a81fc01bfa8c24772ad771cf89ab7ea (diff)
downloadgcc-0e41289aa52993a6d4844e7458dc4cb08e4618ad.zip
gcc-0e41289aa52993a6d4844e7458dc4cb08e4618ad.tar.gz
gcc-0e41289aa52993a6d4844e7458dc4cb08e4618ad.tar.bz2
parser: Add RestPattern parsing
Add simple RestPattern parsing to the pattern parsing function. gcc/rust/ChangeLog: * parse/rust-parse-impl.h (Parser::parse_pattern_no_alt): Handle RestPattern correctly. Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
-rw-r--r--gcc/rust/parse/rust-parse-impl.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/rust/parse/rust-parse-impl.h b/gcc/rust/parse/rust-parse-impl.h
index 2cea013..63e425e 100644
--- a/gcc/rust/parse/rust-parse-impl.h
+++ b/gcc/rust/parse/rust-parse-impl.h
@@ -10737,6 +10737,10 @@ Parser<ManagedTokenSource>::parse_pattern_no_alt ()
lexer.skip_token ();
return std::unique_ptr<AST::WildcardPattern> (
new AST::WildcardPattern (t->get_locus ()));
+ case DOT_DOT:
+ lexer.skip_token ();
+ return std::unique_ptr<AST::RestPattern> (
+ new AST::RestPattern (t->get_locus ()));
case REF:
case MUT:
return parse_identifier_pattern ();