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

Unified Diff: pkg/compiler/lib/src/js_backend/runtime_types.dart

Issue 2975433002: Assert that we don't mix K and J elements (Closed)
Patch Set: Updated cf. comments Created 3 years, 5 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: pkg/compiler/lib/src/js_backend/runtime_types.dart
diff --git a/pkg/compiler/lib/src/js_backend/runtime_types.dart b/pkg/compiler/lib/src/js_backend/runtime_types.dart
index 0fbdff172bdd9b94af450c828da9534a6f5d1736..f6850c42313378faabec8095bbf2474981cb1696 100644
--- a/pkg/compiler/lib/src/js_backend/runtime_types.dart
+++ b/pkg/compiler/lib/src/js_backend/runtime_types.dart
@@ -65,9 +65,7 @@ abstract class RuntimeTypesNeedBuilder {
/// Computes the [RuntimeTypesNeed] for the data registered with this builder.
RuntimeTypesNeed computeRuntimeTypesNeed(
- ResolutionWorldBuilder resolutionWorldBuilder,
- ClosedWorld closedWorld,
- DartTypes types,
+ ResolutionWorldBuilder resolutionWorldBuilder, ClosedWorld closedWorld,
{bool enableTypeAssertions});
}
@@ -318,12 +316,8 @@ class RuntimeTypesNeedBuilderImpl extends _RuntimeTypesBase
@override
RuntimeTypesNeed computeRuntimeTypesNeed(
- ResolutionWorldBuilder resolutionWorldBuilder,
- ClosedWorld closedWorld,
- DartTypes types,
+ ResolutionWorldBuilder resolutionWorldBuilder, ClosedWorld closedWorld,
{bool enableTypeAssertions}) {
- CommonElements commonElements = closedWorld.commonElements;
-
Set<ClassEntity> classesNeedingRti = new Set<ClassEntity>();
Set<FunctionEntity> methodsNeedingRti = new Set<FunctionEntity>();
Set<Local> localFunctionsNeedingRti = new Set<Local>();
@@ -374,9 +368,9 @@ class RuntimeTypesNeedBuilderImpl extends _RuntimeTypesBase
// the calls of the list constructor whenever we determine that
// JSArray needs type arguments.
// TODO(karlklose): make this dependency visible from code.
- if (commonElements.jsArrayClass != null) {
- ClassEntity listClass = commonElements.listClass;
- registerRtiDependency(commonElements.jsArrayClass, listClass);
+ if (closedWorld.commonElements.jsArrayClass != null) {
+ ClassEntity listClass = closedWorld.commonElements.listClass;
+ registerRtiDependency(closedWorld.commonElements.jsArrayClass, listClass);
}
// Check local functions and closurized members.
@@ -385,7 +379,8 @@ class RuntimeTypesNeedBuilderImpl extends _RuntimeTypesBase
ClassEntity contextClass = DartTypes.getClassContext(functionType);
if (contextClass != null &&
(potentialSubtypeOf == null ||
- types.isPotentialSubtype(functionType, potentialSubtypeOf))) {
+ closedWorld.dartTypes
+ .isPotentialSubtype(functionType, potentialSubtypeOf))) {
potentiallyAddForRti(contextClass);
return true;
}
« no previous file with comments | « pkg/compiler/lib/src/js_backend/js_interop_analysis.dart ('k') | pkg/compiler/lib/src/js_emitter/code_emitter_task.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698