| Index: pkg/compiler/lib/src/inferrer/node_tracer.dart
|
| diff --git a/pkg/compiler/lib/src/inferrer/node_tracer.dart b/pkg/compiler/lib/src/inferrer/node_tracer.dart
|
| index 64f5c2bfab16d41da6b200b6d1a9cd24670e3159..b30ae28563a0d665c971f998951a522aa04b2492 100644
|
| --- a/pkg/compiler/lib/src/inferrer/node_tracer.dart
|
| +++ b/pkg/compiler/lib/src/inferrer/node_tracer.dart
|
| @@ -450,8 +450,8 @@ abstract class TracerVisitor implements TypeInformationVisitor {
|
| bailout('Returned from a closure');
|
| }
|
| if (info.element.isField &&
|
| - !inferrer.compiler.backend
|
| - .canFieldBeUsedForGlobalOptimizations(info.element)) {
|
| + !inferrer.compiler.backend.canFieldBeUsedForGlobalOptimizations(
|
| + info.element, inferrer.closedWorld)) {
|
| bailout('Escape to code that has special backend treatment');
|
| }
|
| addNewEscapeInformation(info);
|
| @@ -464,7 +464,7 @@ abstract class TracerVisitor implements TypeInformationVisitor {
|
| }
|
| if (!inferrer.compiler.backend
|
| .canFunctionParametersBeUsedForGlobalOptimizations(
|
| - element.functionDeclaration)) {
|
| + element.functionDeclaration, inferrer.closedWorld)) {
|
| bailout('Escape to code that has special backend treatment');
|
| }
|
| if (isParameterOfListAddingMethod(element) ||
|
|
|