diff --git a/src/comp/syntax/parse/parser.rs b/src/comp/syntax/parse/parser.rs index b2da68b0cd9..5e66ba88126 100644 --- a/src/comp/syntax/parse/parser.rs +++ b/src/comp/syntax/parse/parser.rs @@ -1188,6 +1188,7 @@ const ternary_prec: int = 0; fn parse_more_binops(p: parser, lhs: @ast::expr, min_prec: int) -> @ast::expr { + if !expr_has_value(lhs) { ret lhs; } let peeked = p.peek(); for cur: op_spec in *p.get_prec_table() { if cur.prec > min_prec && cur.tok == peeked {