more compiler stuff
--HG--
branch : trunk
diff --git a/jinja2/parser.py b/jinja2/parser.py
index 96ba0a0..426e554 100644
--- a/jinja2/parser.py
+++ b/jinja2/parser.py
@@ -59,7 +59,7 @@
self.stream.next()
return self.parse_call_block()
lineno = self.stream.current
- expr = self.parse_expression()
+ expr = self.parse_tuple()
if self.stream.current.type == 'assign':
result = self.parse_assign(expr)
else:
@@ -202,6 +202,7 @@
if self.stream.current.type is 'assign':
self.stream.next()
defaults.append(self.parse_expression())
+ args.append(arg)
self.stream.expect('rparen')
node.body = self.parse_statements(('endmacro',), drop_needle=True)
return node
@@ -555,8 +556,8 @@
self.stream.look().type is 'assign':
key = self.stream.current.value
self.stream.skip(2)
- kwargs.append(nodes.Pair(key, self.parse_expression(),
- lineno=key.lineno))
+ kwargs.append(nodes.Keyword(key, self.parse_expression(),
+ lineno=key.lineno))
else:
ensure(not kwargs)
args.append(self.parse_expression())