| Index: pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
|
| diff --git a/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart b/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
|
| index 82d2c13a367b3cf2045711b67742eaee32284c2f..54ae63010b284800e90b9bcf3691e0c7afe64245 100644
|
| --- a/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
|
| +++ b/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
|
| @@ -723,6 +723,9 @@ class OldEmitter implements Emitter {
|
| }
|
|
|
| void emitClass(Class cls, ClassBuilder enclosingBuilder) {
|
| + // Native classes are handled by the native emitter.
|
| + assert(!cls.isNative || cls.onlyForRti);
|
| +
|
| ClassElement classElement = cls.element;
|
| compiler.withCurrentElement(classElement, () {
|
| if (compiler.hasIncrementalSupport) {
|
| @@ -1756,17 +1759,18 @@ function(originalDescriptor, name, holder, isStatic, globalFunctionsAccess) {
|
| return emitDeferredCode(program, outputBuffers);
|
| }
|
|
|
| - CodeBuffer buildNativesBuffer() {
|
| + CodeBuffer buildNativesBuffer(Program program) {
|
| // Emit native classes on [nativeBuffer].
|
| // TODO(johnniwinther): Avoid creating a [CodeBuffer].
|
| final CodeBuffer nativeBuffer = new CodeBuffer();
|
|
|
| - if (nativeClasses.isEmpty) return nativeBuffer;
|
| + if (program.nativeClasses.isEmpty) return nativeBuffer;
|
|
|
|
|
| addComment('Native classes', nativeBuffer);
|
|
|
| - nativeEmitter.generateNativeClasses(nativeClasses, additionalProperties);
|
| + nativeEmitter.generateNativeClasses(program.nativeClasses,
|
| + additionalProperties);
|
|
|
| nativeEmitter.finishGenerateNativeClasses();
|
| nativeEmitter.assembleCode(nativeBuffer);
|
| @@ -1785,7 +1789,7 @@ function(originalDescriptor, name, holder, isStatic, globalFunctionsAccess) {
|
| // itself.
|
| Map<OutputUnit, String> deferredLoadHashes =
|
| emitDeferredOutputUnits(program);
|
| - CodeBuffer nativeBuffer = buildNativesBuffer();
|
| + CodeBuffer nativeBuffer = buildNativesBuffer(program);
|
| emitMainOutputUnit(program, deferredLoadHashes, nativeBuffer);
|
|
|
| if (backend.requiresPreamble &&
|
|
|