Comments
Patch
@@ -120,12 +120,12 @@ def tokenize(program, start, end):
yield ('symbol', sym, s)
pos -= 1
elif c == '}':
- pos += 1
- break
+ yield ('end', None, pos + 1)
+ return
else:
raise error.ParseError(_("syntax error"), pos)
pos += 1
- yield ('end', None, pos)
+ raise error.ParseError(_("unterminated template expansion"), start)
def _parsetemplate(tmpl, start, stop):
parsed = []
@@ -2513,6 +2513,10 @@ Error on syntax:
abort: t:3: unmatched quotes
[255]
+ $ hg log -T '{date'
+ hg: parse error at 1: unterminated template expansion
+ [255]
+
Behind the scenes, this will throw TypeError
$ hg log -l 3 --template '{date|obfuscate}\n'