summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2016-02-25 21:27:16 +0800
committerJohn Hodge <tpg@mutabah.net>2016-02-25 21:27:16 +0800
commitb1b7e4237dee5fdbb280baec3fe7a3b38f6425f7 (patch)
treec69b0b5d2ef40aabface1a241ff94361f11244db
parentd47fda127598279cf0193b411d67dbb96ca50233 (diff)
downloadmrust-b1b7e4237dee5fdbb280baec3fe7a3b38f6425f7.tar.gz
Parse/paths - Handle >>= and >= destructuring
-rw-r--r--src/parse/paths.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/parse/paths.cpp b/src/parse/paths.cpp
index c3618e85..95b22c4a 100644
--- a/src/parse/paths.cpp
+++ b/src/parse/paths.cpp
@@ -196,7 +196,13 @@ AST::Path Parse_Path(TokenStream& lex, bool is_abs, eParsePathGenericMode generi
} while( GET_TOK(tok, lex) == TOK_COMMA );
// HACK: Split >> into >
- if(tok.type() == TOK_DOUBLE_GT) {
+ if(tok.type() == TOK_DOUBLE_GT_EQUAL) {
+ lex.putback(Token(TOK_GTE));
+ }
+ else if(tok.type() == TOK_GTE) {
+ lex.putback(Token(TOK_EQUAL));
+ }
+ else if(tok.type() == TOK_DOUBLE_GT) {
lex.putback(Token(TOK_GT));
}
else {