summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2015-03-21 13:59:02 +0800
committerJohn Hodge <tpg@mutabah.net>2015-03-21 13:59:02 +0800
commitdf6c0cf38a0b6f5f7aee8486ea45f7e7cffa6b57 (patch)
tree03b2966eeedd76039033e25f36b71d83945bb35f
parentcc819279a6d364c586e80b1fcc8ed82d6e4cdbf6 (diff)
downloadmrust-df6c0cf38a0b6f5f7aee8486ea45f7e7cffa6b57.tar.gz
Add && => & & split in expr
-rw-r--r--src/parse/expr.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/parse/expr.cpp b/src/parse/expr.cpp
index 0e434c8c..de27de7f 100644
--- a/src/parse/expr.cpp
+++ b/src/parse/expr.cpp
@@ -729,6 +729,9 @@ ExprNodeP Parse_Expr12(TokenStream& lex)
return NEWNODE( AST::ExprNode_Deref, Parse_Expr12(lex) );
case TOK_RWORD_BOX:
return NEWNODE( AST::ExprNode_UniOp, AST::ExprNode_UniOp::BOX, Parse_Expr12(lex) );
+ case TOK_DOUBLE_AMP:
+ // HACK: Split && into & &
+ lex.putback( Token(TOK_AMP) );
case TOK_AMP:
if( GET_TOK(tok, lex) == TOK_RWORD_MUT )
return NEWNODE( AST::ExprNode_UniOp, AST::ExprNode_UniOp::REFMUT, Parse_Expr12(lex) );