DescriptionFix bad code-generation for nested-ifs in for loops.
In the builder we compile (x && y && z) into nested ifs. Before
code-emission we try to detect this pattern:
If
/ \
/ \
1 expr1 \
If \
/ \ \
/ \ goto
1 expr2 |
goto goto |
\ / |
\ / |
phi1(expr2, true|false) <=== nested if's join block
\ |
\ |
phi(phi1, true|false)
However we forgot to verify that the nested if's join block didn't
contain any expression.
Fixes issue 4826.
Committed: https://code.google.com/p/dart/source/detail?r=11627
Patch Set 1 #
Total comments: 2
Messages
Total messages: 3 (0 generated)
|