summaryrefslogtreecommitdiff
path: root/src/parse/pattern.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse/pattern.cpp')
-rw-r--r--src/parse/pattern.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/parse/pattern.cpp b/src/parse/pattern.cpp
index d6b646b5..b8794dfd 100644
--- a/src/parse/pattern.cpp
+++ b/src/parse/pattern.cpp
@@ -260,6 +260,14 @@ AST::Pattern Parse_PatternReal_Slice(TokenStream& lex, bool is_refutable)
GET_TOK(tok, lex); // TOK_DOUBLE_DOT
}
+ else if( tok.type() == TOK_UNDERSCORE && lex.lookahead(0) == TOK_DOUBLE_DOT) {
+ if(is_trailing)
+ ERROR(lex.end_span(sp), E0000, "Multiple instances of .. in a slice pattern");
+ rv_array.extra_bind = "_";
+ is_trailing = true;
+
+ GET_TOK(tok, lex); // TOK_DOUBLE_DOT
+ }
else if( tok.type() == TOK_DOUBLE_DOT ) {
if(is_trailing)
ERROR(lex.end_span(sp), E0000, "Multiple instances of .. in a slice pattern");