diff -r 42ac9d1d1572 -r 455190fb4e51 mercurial/parser.py --- a/mercurial/parser.py Mon Jul 06 21:55:55 2015 +0900 +++ b/mercurial/parser.py Mon Jul 06 22:01:41 2015 +0900 @@ -62,7 +62,7 @@ token, value, pos = self._advance() # handle infix rules, take as suffix if unambiguous infix, suffix = self._elements[token][3:] - if suffix and not self._hasnewterm(): + if suffix and not (infix and self._hasnewterm()): expr = (suffix[0], expr) elif infix: expr = (infix[0], expr, self._parseoperand(*infix[1:]))