DescriptionFix compilation for Opera.
2 issues:
- Opera claims to support __proto__ but for some cases it is buggy: it can happen that the changing of __proto__ makes the object lose fields.
- Opera sometimes returns "Function.prototype" for the 'name'-property of the constructor of DOM objects.
The first issue is fixed with a supportsProtoCheck. To do this, I slightly refactored the defineClass method, so it doesn't have a side-effect (except for the arguments that are passed in).
This also made it necessary to use the "new" syntax for BoundClosure classes: $$.BoundClosure = { ... };
Normally this is nicer anyways. The only problem could be that I missed a case where we generate a bound closure and do not call "finishClasses" afterwards.
Fixes issue 3812.
Committed: https://code.google.com/p/dart/source/detail?r=9736
Patch Set 1 #
Total comments: 2
Patch Set 2 : Address comment. #
Messages
Total messages: 3 (0 generated)
|