| Index: pkg/compiler/lib/src/inferrer/closure_tracer.dart
|
| diff --git a/pkg/compiler/lib/src/inferrer/closure_tracer.dart b/pkg/compiler/lib/src/inferrer/closure_tracer.dart
|
| index b7d1ef7b71ea50a90d9d896e64df8b0250f314e6..ed2d198967214408ce5d37f0d8caaf1158f4111a 100644
|
| --- a/pkg/compiler/lib/src/inferrer/closure_tracer.dart
|
| +++ b/pkg/compiler/lib/src/inferrer/closure_tracer.dart
|
| @@ -12,7 +12,6 @@ import 'node_tracer.dart';
|
| import 'type_graph_nodes.dart';
|
| import 'debug.dart' as debug;
|
|
|
| -
|
| class ClosureTracerVisitor extends TracerVisitor<ApplyableTypeInformation> {
|
| final Iterable<FunctionElement> tracedElements;
|
| final List<CallSiteTypeInformation> _callsToAnalyze =
|
| @@ -25,7 +24,7 @@ class ClosureTracerVisitor extends TracerVisitor<ApplyableTypeInformation> {
|
| analyze();
|
| if (!continueAnalyzing) return;
|
| _callsToAnalyze.forEach(_analyzeCall);
|
| - for(FunctionElement e in tracedElements) {
|
| + for (FunctionElement e in tracedElements) {
|
| e.functionSignature.forEachParameter((Element parameter) {
|
| ElementTypeInformation info =
|
| inferrer.types.getInferredTypeOf(parameter);
|
| @@ -50,8 +49,9 @@ class ClosureTracerVisitor extends TracerVisitor<ApplyableTypeInformation> {
|
| TypeMask mask = info.mask;
|
| tracedElements.forEach((FunctionElement functionElement) {
|
| if (!selector.signatureApplies(functionElement)) return;
|
| - inferrer.updateParameterAssignments(info, functionElement, info.arguments,
|
| - selector, mask, remove: false, addToQueue: false);
|
| + inferrer.updateParameterAssignments(
|
| + info, functionElement, info.arguments, selector, mask,
|
| + remove: false, addToQueue: false);
|
| });
|
| }
|
|
|
| @@ -75,10 +75,10 @@ class ClosureTracerVisitor extends TracerVisitor<ApplyableTypeInformation> {
|
| bailout('Used in JS ${info.call}');
|
| }
|
| }
|
| - if (called.isGetter
|
| - && info.selector != null
|
| - && info.selector.isCall
|
| - && inferrer.types.getInferredTypeOf(called) == currentUser) {
|
| + if (called.isGetter &&
|
| + info.selector != null &&
|
| + info.selector.isCall &&
|
| + inferrer.types.getInferredTypeOf(called) == currentUser) {
|
| // This node can be a closure call as well. For example, `foo()`
|
| // where `foo` is a getter.
|
| _registerCallForLaterAnalysis(info);
|
| @@ -125,9 +125,9 @@ class StaticTearOffClosureTracerVisitor extends ClosureTracerVisitor {
|
| @override
|
| visitStaticCallSiteTypeInformation(StaticCallSiteTypeInformation info) {
|
| super.visitStaticCallSiteTypeInformation(info);
|
| - if (info.calledElement == tracedElements.first
|
| - && info.selector != null
|
| - && info.selector.isGetter) {
|
| + if (info.calledElement == tracedElements.first &&
|
| + info.selector != null &&
|
| + info.selector.isGetter) {
|
| addNewEscapeInformation(info);
|
| }
|
| }
|
|
|