Details
-
Type:
Bug
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 1.7-beta-1, 2.2.0-beta-1
-
Fix Version/s: None
-
Component/s: Compiler
-
Labels:None
-
Testcase included:yes
-
Number of attachments :
Description
class SpreadMapBug extends GroovyTestCase { void test() { def x = 0 assertEquals([a:1, b:1], [a:1, *:[b:++x]]) // fails; actual value: [a:1, b:2] } }
Maybe this bug is related to the (strange) AST representation for a spread map expression (at least that's how I found the bug):
"*:[b:++x]" is a MapEntryExpression whose
- key is a SpreadMapExpression whose expression is a MapExpression representing "[b:++x]"
- value is a MapExpression representing "[b:++x]".
That makes two MapExpressionS...