| Index: dart/sdk/lib/_internal/compiler/implementation/native_handler.dart
|
| diff --git a/dart/sdk/lib/_internal/compiler/implementation/native_handler.dart b/dart/sdk/lib/_internal/compiler/implementation/native_handler.dart
|
| index 0d5b23273d5ec3a1c73167ca82bdc635ed438dbe..316e6d9442cf5c67291564d6540b87e0840f47f5 100644
|
| --- a/dart/sdk/lib/_internal/compiler/implementation/native_handler.dart
|
| +++ b/dart/sdk/lib/_internal/compiler/implementation/native_handler.dart
|
| @@ -218,7 +218,7 @@ abstract class NativeEnqueuerBase implements NativeEnqueuer {
|
| pendingClasses.remove(classElement);
|
| registeredClasses.add(classElement);
|
|
|
| - world.registerInstantiatedClass(classElement);
|
| + world.registerInstantiatedClass(classElement, compiler.globalDependencies);
|
|
|
| // Also parse the node to know all its methods because otherwise it will
|
| // only be parsed if there is a call to one of its constructors.
|
| @@ -322,26 +322,35 @@ abstract class NativeEnqueuerBase implements NativeEnqueuer {
|
| matchedTypeConstraints.add(type);
|
| if (type is SpecialType) {
|
| if (type == SpecialType.JsArray) {
|
| - world.registerInstantiatedClass(compiler.listClass);
|
| + world.registerInstantiatedClass(compiler.listClass,
|
| + compiler.globalDependencies);
|
| } else if (type == SpecialType.JsObject) {
|
| - world.registerInstantiatedClass(compiler.objectClass);
|
| + world.registerInstantiatedClass(compiler.objectClass,
|
| + compiler.globalDependencies);
|
| }
|
| continue;
|
| }
|
| if (type is InterfaceType) {
|
| if (type.element == compiler.intClass) {
|
| - world.registerInstantiatedClass(compiler.intClass);
|
| + world.registerInstantiatedClass(
|
| + compiler.intClass, compiler.globalDependencies);
|
| } else if (type.element == compiler.doubleClass) {
|
| - world.registerInstantiatedClass(compiler.doubleClass);
|
| + world.registerInstantiatedClass(
|
| + compiler.doubleClass, compiler.globalDependencies);
|
| } else if (type.element == compiler.numClass) {
|
| - world.registerInstantiatedClass(compiler.doubleClass);
|
| - world.registerInstantiatedClass(compiler.intClass);
|
| + world.registerInstantiatedClass(
|
| + compiler.doubleClass, compiler.globalDependencies);
|
| + world.registerInstantiatedClass(
|
| + compiler.intClass, compiler.globalDependencies);
|
| } else if (type.element == compiler.stringClass) {
|
| - world.registerInstantiatedClass(compiler.stringClass);
|
| + world.registerInstantiatedClass(
|
| + compiler.stringClass, compiler.globalDependencies);
|
| } else if (type.element == compiler.nullClass) {
|
| - world.registerInstantiatedClass(compiler.nullClass);
|
| + world.registerInstantiatedClass(
|
| + compiler.nullClass, compiler.globalDependencies);
|
| } else if (type.element == compiler.boolClass) {
|
| - world.registerInstantiatedClass(compiler.boolClass);
|
| + world.registerInstantiatedClass(
|
| + compiler.boolClass, compiler.globalDependencies);
|
| }
|
| }
|
| assert(type is DartType);
|
|
|