| Index: pkg/compiler/lib/src/js_emitter/program_builder/collector.dart
|
| diff --git a/pkg/compiler/lib/src/js_emitter/program_builder/collector.dart b/pkg/compiler/lib/src/js_emitter/program_builder/collector.dart
|
| index 69babce0b9209603bc396822d64e2ba45d90f64e..d5a0794225371770ecb28d6cb9176da112bfe8a7 100644
|
| --- a/pkg/compiler/lib/src/js_emitter/program_builder/collector.dart
|
| +++ b/pkg/compiler/lib/src/js_emitter/program_builder/collector.dart
|
| @@ -42,6 +42,8 @@ class Collector {
|
|
|
| JavaScriptBackend get backend => compiler.backend;
|
|
|
| + CoreClasses get coreClasses => compiler.coreClasses;
|
| +
|
| Collector(this.compiler, this.namer, this.rtiNeededClasses, this.emitter);
|
|
|
| Set<ClassElement> computeInterceptorsReferencedFromConstants() {
|
| @@ -67,7 +69,7 @@ class Collector {
|
| Set<ClassElement> unneededClasses = new Set<ClassElement>();
|
| // The [Bool] class is not marked as abstract, but has a factory
|
| // constructor that always throws. We never need to emit it.
|
| - unneededClasses.add(compiler.boolClass);
|
| + unneededClasses.add(coreClasses.boolClass);
|
|
|
| // Go over specialized interceptors and then constants to know which
|
| // interceptors are needed.
|
| @@ -84,7 +86,7 @@ class Collector {
|
| // Add unneeded interceptors to the [unneededClasses] set.
|
| for (ClassElement interceptor in backend.interceptedClasses) {
|
| if (!needed.contains(interceptor)
|
| - && interceptor != compiler.objectClass) {
|
| + && interceptor != coreClasses.objectClass) {
|
| unneededClasses.add(interceptor);
|
| }
|
| }
|
| @@ -214,22 +216,22 @@ class Collector {
|
|
|
| // TODO(18175, floitsch): remove once issue 18175 is fixed.
|
| if (neededClasses.contains(backend.jsIntClass)) {
|
| - neededClasses.add(compiler.intClass);
|
| + neededClasses.add(coreClasses.intClass);
|
| }
|
| if (neededClasses.contains(backend.jsDoubleClass)) {
|
| - neededClasses.add(compiler.doubleClass);
|
| + neededClasses.add(coreClasses.doubleClass);
|
| }
|
| if (neededClasses.contains(backend.jsNumberClass)) {
|
| - neededClasses.add(compiler.numClass);
|
| + neededClasses.add(coreClasses.numClass);
|
| }
|
| if (neededClasses.contains(backend.jsStringClass)) {
|
| - neededClasses.add(compiler.stringClass);
|
| + neededClasses.add(coreClasses.stringClass);
|
| }
|
| if (neededClasses.contains(backend.jsBoolClass)) {
|
| - neededClasses.add(compiler.boolClass);
|
| + neededClasses.add(coreClasses.boolClass);
|
| }
|
| if (neededClasses.contains(backend.jsArrayClass)) {
|
| - neededClasses.add(compiler.listClass);
|
| + neededClasses.add(coreClasses.listClass);
|
| }
|
|
|
| // 4. Finally, sort the classes.
|
|
|