Chromium Code Reviews| Index: pkg/compiler/lib/src/js_backend/native_emitter.dart |
| diff --git a/pkg/compiler/lib/src/js_backend/native_emitter.dart b/pkg/compiler/lib/src/js_backend/native_emitter.dart |
| index d58559459fe383612e018ced02e7d83443bd215e..7cffb96f60f587ec047a9417c9eaac32f9e7a2fa 100644 |
| --- a/pkg/compiler/lib/src/js_backend/native_emitter.dart |
| +++ b/pkg/compiler/lib/src/js_backend/native_emitter.dart |
| @@ -279,16 +279,6 @@ class NativeEmitter { |
| } |
| ClassBuilder generateNativeClass(ClassElement classElement) { |
| - ClassBuilder builder; |
| - if (compiler.hasIncrementalSupport) { |
| - builder = cachedBuilders[classElement]; |
| - if (builder != null) return builder; |
| - builder = new ClassBuilder(classElement, backend.namer); |
| - cachedBuilders[classElement] = builder; |
| - } else { |
| - builder = new ClassBuilder(classElement, backend.namer); |
| - } |
| - |
| // TODO(sra): Issue #13731- this is commented out as part of custom element |
| // constructor work. |
| //assert(!classElement.hasBackendMembers); |
| @@ -304,10 +294,21 @@ class NativeEmitter { |
| String superName = backend.namer.getNameOfClass(superclass); |
| + ClassBuilder builder; |
| + if (compiler.hasIncrementalSupport) { |
| + builder = cachedBuilders[classElement]; |
| + if (builder != null) return builder; |
| + builder = new ClassBuilder(classElement, backend.namer); |
| + cachedBuilders[classElement] = builder; |
| + } else { |
| + builder = new ClassBuilder(classElement, backend.namer); |
| + } |
| + builder.superName = superName; |
|
floitsch
2014/11/25 15:17:13
Line 306 is new. The rest is copied from above.
|
| + |
| emitterTask.oldEmitter.classEmitter.emitClassConstructor( |
| classElement, builder); |
| bool hasFields = emitterTask.oldEmitter.classEmitter.emitFields( |
| - classElement, builder, superName, classIsNative: true); |
| + classElement, builder, classIsNative: true); |
| int propertyCount = builder.properties.length; |
| emitterTask.oldEmitter.classEmitter.emitClassGettersSetters( |
| classElement, builder); |