Chromium Code Reviews| Index: pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart |
| diff --git a/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart b/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart |
| index b302033e8a8fa19fdea4760f045f2ad20c2e41e3..24b02570dcda15cd2bb0b4283c41fba0e1f734cd 100644 |
| --- a/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart |
| +++ b/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart |
| @@ -88,8 +88,6 @@ class ModelEmitter { |
| static const String deferredExtension = "part.js"; |
| - static const String typeNameProperty = r"builtin$cls"; |
| - |
| ModelEmitter(Compiler compiler, Namer namer, this.nativeEmitter) |
| : this.compiler = compiler, |
| this.namer = namer { |
| @@ -1185,7 +1183,10 @@ function parseFunctionDescriptor(proto, name, descriptor, typesOffset) { |
| typesOffset); |
| } |
| - constructor.$typeNameProperty = name; // Needed for RTI. |
| + if (typeof constructor.name != 'string') { |
|
sra1
2015/06/26 23:10:09
Use double quotes in JS for consistency with gener
floitsch
2015/07/01 17:00:14
done. also in other places.
|
| + // IE does not store the name, but allows to modify the property. |
| + constructor.name = name; |
| + } |
| constructor.prototype = prototype; |
| prototype[#operatorIsPrefix + name] = constructor; |
| prototype.constructor = constructor; |