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

Unified Diff: tests/compiler/dart2js/kernel/closed_world_test.dart

Issue 2827283002: Implement subtype relation for kernel based elements. (Closed)
Patch Set: Remove @override annotations Created 3 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: tests/compiler/dart2js/kernel/closed_world_test.dart
diff --git a/tests/compiler/dart2js/kernel/closed_world_test.dart b/tests/compiler/dart2js/kernel/closed_world_test.dart
index 4ea4ea9b51d37862e7aabbfa657b88df34c9ec79..c95cb9e269d65c47597088e77882b68be787874c 100644
--- a/tests/compiler/dart2js/kernel/closed_world_test.dart
+++ b/tests/compiler/dart2js/kernel/closed_world_test.dart
@@ -7,7 +7,6 @@
library dart2js.kernel.closed_world_test;
import 'package:async_helper/async_helper.dart';
-import 'package:compiler/src/closure.dart';
import 'package:compiler/src/commandline_options.dart';
import 'package:compiler/src/common.dart';
import 'package:compiler/src/common_elements.dart';
@@ -15,34 +14,20 @@ import 'package:compiler/src/common/backend_api.dart';
import 'package:compiler/src/common/resolution.dart';
import 'package:compiler/src/common/work.dart';
import 'package:compiler/src/compiler.dart';
-import 'package:compiler/src/deferred_load.dart';
import 'package:compiler/src/elements/resolution_types.dart';
import 'package:compiler/src/elements/elements.dart';
import 'package:compiler/src/elements/entities.dart';
-import 'package:compiler/src/elements/types.dart';
import 'package:compiler/src/enqueue.dart';
import 'package:compiler/src/js_backend/backend.dart';
-import 'package:compiler/src/js_backend/backend_impact.dart';
import 'package:compiler/src/js_backend/backend_usage.dart';
-import 'package:compiler/src/js_backend/custom_elements_analysis.dart';
-import 'package:compiler/src/js_backend/native_data.dart';
-import 'package:compiler/src/js_backend/impact_transformer.dart';
import 'package:compiler/src/js_backend/interceptor_data.dart';
-import 'package:compiler/src/js_backend/lookup_map_analysis.dart';
-import 'package:compiler/src/js_backend/mirrors_analysis.dart';
-import 'package:compiler/src/js_backend/mirrors_data.dart';
-import 'package:compiler/src/js_backend/no_such_method_registry.dart';
import 'package:compiler/src/js_backend/resolution_listener.dart';
import 'package:compiler/src/js_backend/type_variable_handler.dart';
-import 'package:compiler/src/native/enqueue.dart';
-import 'package:compiler/src/kernel/world_builder.dart';
-import 'package:compiler/src/options.dart';
import 'package:compiler/src/ssa/kernel_impact.dart';
import 'package:compiler/src/serialization/equivalence.dart';
import 'package:compiler/src/universe/world_builder.dart';
import 'package:compiler/src/universe/world_impact.dart';
import 'package:compiler/src/world.dart';
-import 'package:kernel/ast.dart' as ir;
import 'impact_test.dart';
import '../memory_compiler.dart';
import '../serialization/helper.dart';
@@ -125,28 +110,30 @@ main(List<String> args) {
backendUsage, backendUsage, compiler.enqueuer.resolution, enqueuer,
typeEquivalence: (ResolutionDartType a, ResolutionDartType b) {
return areTypesEquivalent(unalias(a), unalias(b));
- }, elementFilter: (Element element) {
- if (element is ConstructorElement && element.isRedirectingFactory) {
- // Redirecting factory constructors are skipped in kernel.
- return false;
- }
- if (element is ClassElement) {
- for (ConstructorElement constructor in element.constructors) {
- if (!constructor.isRedirectingFactory) {
- return true;
- }
- }
- // The class cannot itself be instantiated.
- return false;
- }
- return true;
- }, verbose: arguments.verbose);
+ }, elementFilter: elementFilter, verbose: arguments.verbose);
checkClosedWorlds(
compiler.resolutionWorldBuilder.closedWorldForTesting, closedWorld,
verbose: arguments.verbose);
});
}
+bool elementFilter(Entity element) {
+ if (element is ConstructorElement && element.isRedirectingFactory) {
+ // Redirecting factory constructors are skipped in kernel.
+ return false;
+ }
+ if (element is ClassElement) {
+ for (ConstructorElement constructor in element.constructors) {
+ if (!constructor.isRedirectingFactory) {
+ return true;
+ }
+ }
+ // The class cannot itself be instantiated.
+ return false;
+ }
+ return true;
+}
+
List createResolutionEnqueuerListener(Compiler compiler) {
JavaScriptBackend backend = compiler.backend;
BackendUsageBuilder backendUsageBuilder =
@@ -205,6 +192,7 @@ class KernelWorkItem implements ResolutionWorkItem {
@override
WorldImpact run() {
+ print('$element');
Siggi Cherem (dart-lang) 2017/04/21 16:41:14 delete?
Johnni Winther 2017/04/24 08:25:42 Done.
ResolutionImpact resolutionImpact = build(_compiler, element.resolvedAst);
return _impactTransformer.transformResolutionImpact(resolutionImpact);
}

Powered by Google App Engine
This is Rietveld 408576698