| Index: dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| diff --git a/dart/pkg/compiler/lib/src/js_backend/backend.dart b/dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| index a33b032470c93d6697851954aaa89b688f7519b6..3b64c8d45633a4cfbaa5f9196016834cd4d3d43a 100644
|
| --- a/dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| +++ b/dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| @@ -2580,9 +2580,10 @@ class JavaScriptResolutionCallbacks extends ResolutionCallbacks {
|
| void onStackTraceInCatch(Registry registry) {
|
| assert(registry.isForResolution);
|
| registerBackendStaticInvocation(backend.getTraceFromException(), registry);
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.compiler.stackTraceClass, registry);
|
| }
|
|
|
| -
|
| void onTypeVariableExpression(Registry registry) {
|
| assert(registry.isForResolution);
|
| registerBackendStaticInvocation(backend.getSetRuntimeTypeInfo(), registry);
|
| @@ -2710,6 +2711,45 @@ class JavaScriptResolutionCallbacks extends ResolutionCallbacks {
|
| registerBackendStaticInvocation(
|
| backend.compiler.symbolValidatedConstructor, registry);
|
| }
|
| +
|
| + void onLiteralInt(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.intImplementation, registry);
|
| + }
|
| +
|
| + void onLiteralDouble(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.doubleImplementation, registry);
|
| + }
|
| +
|
| + void onLiteralBool(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.boolImplementation, registry);
|
| + }
|
| +
|
| + void onLiteralString(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + // TODO(ahe): For some reason using [backend.stringImplementation] here
|
| + // confuses dart2js during override checks.
|
| + backend.compiler.stringClass, registry);
|
| + }
|
| +
|
| + void onLiteralNull(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.nullImplementation, registry);
|
| + }
|
| +
|
| + void onLiteralSymbol(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.compiler.symbolClass, registry);
|
| + backend.compiler.enqueuer.resolution.registerStaticUse(
|
| + backend.compiler.symbolConstructor.declaration);
|
| + }
|
| +
|
| + void onLiteralFunction(Registry registry) {
|
| + backend.compiler.enqueuer.resolution.registerInstantiatedClass(
|
| + backend.functionImplementation, registry);
|
| + }
|
| }
|
|
|
| /// Records that [constant] is used by the element behind [registry].
|
|
|