Index: pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart |
diff --git a/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart b/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart |
index d41b5e499dd4694bcabe716ff843cfda1b6b3bd0..597a0ba40466fa35e4555037dd6874c0f7416e8b 100644 |
--- a/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart |
+++ b/pkg/compiler/lib/src/js_emitter/program_builder/program_builder.dart |
@@ -100,8 +100,7 @@ class ProgramBuilder { |
_registry.registerElements); |
// We always add the current isolate holder. |
- _registry.registerHolder( |
- namer.staticStateHolder, isStaticStateHolder: true); |
+ _registerStaticStateHolder(); |
// We need to run the native-preparation before we build the output. The |
// preparation code, in turn needs the classes to be set up. |
@@ -251,7 +250,8 @@ class ProgramBuilder { |
ConstantValue initialValue = handler.getInitialValueFor(element); |
// TODO(zarah): The holder should not be registered during building of |
// a static field. |
- _registry.registerHolder(namer.globalObjectForConstant(initialValue)); |
+ _registry.registerHolder( |
+ namer.globalObjectForConstant(initialValue), isConstantsHolder: true); |
js.Expression code = _task.emitter.constantReference(initialValue); |
js.Name name = namer.globalPropertyName(element); |
bool isFinal = false; |
@@ -261,7 +261,7 @@ class ProgramBuilder { |
// building a static field. (Note that the $ holder is already registered |
Siggi Cherem (dart-lang)
2015/07/17 16:04:04
maybe update wording in comment (the reference to
floitsch
2015/07/17 17:27:18
Done.
|
// earlier). |
return new StaticField(element, |
- name, _registry.registerHolder(r'$'), code, |
+ name, _registerStaticStateHolder(), code, |
isFinal, isLazy); |
} |
@@ -296,7 +296,7 @@ class ProgramBuilder { |
// building a static field. (Note that the $ holder is already registered |
Siggi Cherem (dart-lang)
2015/07/17 16:04:04
ditto
floitsch
2015/07/17 17:27:18
Done.
|
// earlier). |
return new StaticField(element, |
- name, _registry.registerHolder(r'$'), code, |
+ name, _registerStaticStateHolder(), code, |
isFinal, isLazy); |
} |
@@ -793,9 +793,15 @@ class ProgramBuilder { |
assert(!_constants.containsKey(constantValue)); |
js.Name name = namer.constantName(constantValue); |
String constantObject = namer.globalObjectForConstant(constantValue); |
- Holder holder = _registry.registerHolder(constantObject); |
+ Holder holder = |
+ _registry.registerHolder(constantObject, isConstantsHolder: true); |
Constant constant = new Constant(name, holder, constantValue); |
_constants[constantValue] = constant; |
} |
} |
+ |
+ Holder _registerStaticStateHolder() { |
+ return _registry.registerHolder( |
+ namer.staticStateHolder, isStaticStateHolder: true); |
+ } |
} |