Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Unified Diff: sdk/lib/_internal/compiler/implementation/js_backend/constant_emitter.dart

Issue 255843005: Avoid generating VariableUse nodes with non-identifier names (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sdk/lib/_internal/compiler/implementation/js_backend/constant_emitter.dart
diff --git a/sdk/lib/_internal/compiler/implementation/js_backend/constant_emitter.dart b/sdk/lib/_internal/compiler/implementation/js_backend/constant_emitter.dart
index 6d7eb6b039a8ab2c06435f03577e1b88020faff0..d8e92454e8b51b5b74e2f8c802e2126b726a7e38 100644
--- a/sdk/lib/_internal/compiler/implementation/js_backend/constant_emitter.dart
+++ b/sdk/lib/_internal/compiler/implementation/js_backend/constant_emitter.dart
@@ -62,8 +62,7 @@ class ConstantReferenceEmitter implements ConstantVisitor<jsAst.Expression> {
}
jsAst.Expression visitFunction(FunctionConstant constant) {
- return new jsAst.VariableUse(
- namer.isolateStaticClosureAccess(constant.element));
+ return namer.isolateStaticClosureAccess(constant.element);
}
jsAst.Expression visitNull(NullConstant constant) {
@@ -218,8 +217,8 @@ class ConstantInitializerEmitter implements ConstantVisitor<jsAst.Expression> {
return maybeAddTypeArguments(constant.type, value);
}
- String getJsConstructor(ClassElement element) {
- return namer.isolateAccess(element);
+ jsAst.Expression getJsConstructor(ClassElement element) {
+ return namer.elementAccess(element);
}
jsAst.Expression visitMap(MapConstant constant) {
@@ -291,9 +290,8 @@ class ConstantInitializerEmitter implements ConstantVisitor<jsAst.Expression> {
"Compiler and ${className} disagree on number of fields.");
}
- jsAst.Expression value = new jsAst.New(
- new jsAst.VariableUse(getJsConstructor(classElement)),
- arguments);
+ jsAst.Expression value =
+ new jsAst.New(getJsConstructor(classElement), arguments);
return maybeAddTypeArguments(constant.type, value);
}
@@ -313,8 +311,7 @@ class ConstantInitializerEmitter implements ConstantVisitor<jsAst.Expression> {
jsAst.Expression visitInterceptor(InterceptorConstant constant) {
return new jsAst.PropertyAccess.field(
- new jsAst.VariableUse(
- getJsConstructor(constant.dispatchedType.element)),
+ getJsConstructor(constant.dispatchedType.element),
'prototype');
}
@@ -331,7 +328,7 @@ class ConstantInitializerEmitter implements ConstantVisitor<jsAst.Expression> {
return new jsAst.LiteralExpression(stripComments(value));
}
jsAst.New instantiation = new jsAst.New(
- new jsAst.VariableUse(getJsConstructor(constant.type.element)),
+ getJsConstructor(constant.type.element),
_array(constant.fields));
return maybeAddTypeArguments(constant.type, instantiation);
}

Powered by Google App Engine
This is Rietveld 408576698