Index: pkg/compiler/lib/src/js_emitter/runtime_type_generator.dart |
diff --git a/pkg/compiler/lib/src/js_emitter/runtime_type_generator.dart b/pkg/compiler/lib/src/js_emitter/runtime_type_generator.dart |
index ffe0e87d9f14637ec757ece109a2e43ee295357d..77663d38b5808e7cb1d5fe019f0b9bf898ea919a 100644 |
--- a/pkg/compiler/lib/src/js_emitter/runtime_type_generator.dart |
+++ b/pkg/compiler/lib/src/js_emitter/runtime_type_generator.dart |
@@ -320,16 +320,16 @@ class RuntimeTypeGenerator { |
Substitution substitution = |
backend.rti.getSubstitution(cls, element.typeDeclaration); |
+ jsAst.Name rtiFieldName = backend.namer.rtiFieldName; |
if (substitution != null) { |
- computeTypeVariable = js( |
- r'#.apply(null, this.$builtinTypeInfo)', |
- backend.rtiEncoder |
- .getSubstitutionCodeForVariable(substitution, index)); |
+ computeTypeVariable = js(r'#.apply(null, this.#)', [ |
+ backend.rtiEncoder.getSubstitutionCodeForVariable(substitution, index), |
+ rtiFieldName |
+ ]); |
} else { |
// TODO(ahe): These can be generated dynamically. |
- computeTypeVariable = js( |
- r'this.$builtinTypeInfo && this.$builtinTypeInfo[#]', |
- js.number(index)); |
+ computeTypeVariable = js(r'this.# && this.#[#]', |
+ [rtiFieldName, rtiFieldName, js.number(index)]); |
} |
jsAst.Expression convertRtiToRuntimeType = backend.emitter |
.staticFunctionAccess(backend.helpers.convertRtiToRuntimeType); |