Chromium Code Reviews
DescriptionFix an assertion failure in dart2js.
In the CPS translation we assert that a mutable variable added to the CPS
term belongs to the function currently being compiled, which is reasonable.
However, in the JS backend this didn't work as written. The variable
element can report that it belongs to a Dart function, and the function
currently being compiled can be a synthesized .call method of a closure
class representing that Dart function.
The solution presented here is to plumb the mapping from Dart function to
closure class .call methods through to where the mutable variables are
created. It might be better, but a lot more complicated, to make the
variable elements able to correctly report their owner after closure
conversion.
R=asgerf@google.com, karlklose@google.com
BUG=
Committed: https://code.google.com/p/dart/source/detail?r=45636
Patch Set 1 #
Total comments: 1
Messages
Total messages: 5 (0 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||