| Index: pkg/compiler/lib/src/js_backend/backend.dart
|
| diff --git a/pkg/compiler/lib/src/js_backend/backend.dart b/pkg/compiler/lib/src/js_backend/backend.dart
|
| index b637d3ea3bc9f1824f117a1e9dffcc6f316d7665..1211fc1c3aff74a243196a3e0f00b1c4fe17f732 100644
|
| --- a/pkg/compiler/lib/src/js_backend/backend.dart
|
| +++ b/pkg/compiler/lib/src/js_backend/backend.dart
|
| @@ -1369,10 +1369,6 @@ class JavaScriptBackend extends Backend {
|
| }
|
| }
|
|
|
| - void registerClassUsingVariableExpression(ClassElement cls) {
|
| - rti.classesUsingTypeVariableExpression.add(cls);
|
| - }
|
| -
|
| bool classNeedsRti(ClassElement cls) {
|
| return rti.classesNeedingRti.contains(cls.declaration) ||
|
| compiler.enabledRuntimeType;
|
| @@ -2986,7 +2982,8 @@ class JavaScriptResolutionCallbacks extends ResolutionCallbacks {
|
| backend.getCheckConcurrentModificationError(), registry);
|
| }
|
|
|
| - void onTypeVariableExpression(Registry registry) {
|
| + void onTypeVariableExpression(Registry registry,
|
| + TypeVariableElement variable) {
|
| assert(registry.isForResolution);
|
| registerBackendStaticInvocation(backend.getSetRuntimeTypeInfo(), registry);
|
| registerBackendStaticInvocation(backend.getGetRuntimeTypeInfo(), registry);
|
| @@ -2995,6 +2992,8 @@ class JavaScriptResolutionCallbacks extends ResolutionCallbacks {
|
| registerBackendStaticInvocation(backend.getRuntimeTypeToString(), registry);
|
| registerBackendStaticInvocation(backend.getCreateRuntimeType(), registry);
|
| needsInt(registry, 'Needed for accessing a type variable literal on this.');
|
| + ClassElement cls = variable.enclosingClass;
|
| + backend.rti.classesUsingTypeVariableExpression.add(cls);
|
| }
|
|
|
| // TODO(johnniwinther): Maybe split this into [onAssertType] and [onTestType].
|
|
|