| Index: pkg/compiler/lib/src/js_emitter/program_builder.dart
|
| diff --git a/pkg/compiler/lib/src/js_emitter/program_builder.dart b/pkg/compiler/lib/src/js_emitter/program_builder.dart
|
| index 0b901412ee4ef0eb11f20b8a15237cb5429b5103..8b55f58ca95c810128231e62e3dd7851610a6a42 100644
|
| --- a/pkg/compiler/lib/src/js_emitter/program_builder.dart
|
| +++ b/pkg/compiler/lib/src/js_emitter/program_builder.dart
|
| @@ -199,14 +199,11 @@ class ProgramBuilder {
|
| }
|
|
|
| List<StaticField> _buildStaticNonFinalFields(LibrariesMap librariesMap) {
|
| - // TODO(floitsch): handle static non-final fields correctly with deferred
|
| - // libraries.
|
| - if (librariesMap != _registry.mainLibrariesMap) {
|
| - return const <StaticField>[];
|
| - }
|
| - Iterable<VariableElement> staticNonFinalFields =
|
| - backend.constants.getStaticNonFinalFieldsForEmission();
|
| - return Elements.sortedByPosition(staticNonFinalFields)
|
| + List<VariableElement> staticNonFinalFields =
|
| + _task.outputStaticNonFinalFieldLists[librariesMap.outputUnit];
|
| + if (staticNonFinalFields == null) return const <StaticField>[];
|
| +
|
| + return staticNonFinalFields
|
| .map(_buildStaticField)
|
| .toList(growable: false);
|
| }
|
|
|