Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart |
| diff --git a/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart b/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart |
| index c2cb16be184f734ce89383a9af869eff74fd08e8..6a447fb32304595fc21f327b1d905de8b38fa531 100644 |
| --- a/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart |
| +++ b/sdk/lib/_internal/compiler/implementation/js_emitter/type_test_emitter.dart |
| @@ -49,7 +49,6 @@ class TypeTestEmitter extends CodeEmitterHelper { |
| // Avoid emitting [:$isObject:] on all classes but [Object]. |
| return; |
| } |
| - other = backend.getImplementationClass(other); |
| builder.addProperty(namer.operatorIs(other), js('true')); |
| } |
| @@ -232,7 +231,8 @@ class TypeTestEmitter extends CodeEmitterHelper { |
| Map<FunctionType, bool> getFunctionTypeChecksOn(DartType type) { |
| Map<FunctionType, bool> functionTypeMap = new Map<FunctionType, bool>(); |
| for (FunctionType functionType in checkedFunctionTypes) { |
| - int maybeSubtype = compiler.types.computeSubtypeRelation(type, functionType); |
| + int maybeSubtype = |
| + compiler.types.computeSubtypeRelation(type, functionType); |
| if (maybeSubtype == Types.IS_SUBTYPE) { |
| functionTypeMap[functionType] = true; |
| } else if (maybeSubtype == Types.MAYBE_SUBTYPE) { |
| @@ -285,7 +285,7 @@ class TypeTestEmitter extends CodeEmitterHelper { |
| if (destination != outputUnit) continue; |
| // TODO(9556). The properties added to 'holder' should be generated |
| // directly as properties of the class object, not added later. |
| - String holder = namer.isolateAccess(backend.getImplementationClass(cls)); |
| + String holder = namer.isolateAccess(cls); |
| for (TypeCheck check in typeChecks[cls]) { |
| ClassElement cls = check.cls; |
| buffer.write('$holder.${namer.operatorIs(cls)}$_=${_}true$N'); |
| @@ -313,7 +313,7 @@ class TypeTestEmitter extends CodeEmitterHelper { |
| Set<ClassElement> result = new Set<ClassElement>(); |
| for (ClassElement cls in typeChecks) { |
| for (TypeCheck check in typeChecks[cls]) { |
| - result.add(backend.getImplementationClass(cls)); |
| + result.add(cls); |
| break; |
| } |
| } |
| @@ -344,9 +344,7 @@ class TypeTestEmitter extends CodeEmitterHelper { |
| rti.getRequiredArgumentClasses(backend).forEach((ClassElement c) { |
| // Types that we represent with JS native types (like int and String) do |
| // not need a class definition as we use the interceptor classes instead. |
|
karlklose
2014/04/28 14:04:25
Update or remove comment.
If you remove it, rewri
floitsch
2014/04/30 19:04:38
Done.
|
| - if (!rti.isJsNative(c)) { |
| - addClassWithSuperclasses(c); |
| - } |
| + addClassWithSuperclasses(c); |
| }); |
| // 2. Add classes that are referenced by substitutions in object checks and |