| Index: pkg/compiler/lib/src/inferrer/locals_handler.dart
|
| diff --git a/pkg/compiler/lib/src/inferrer/locals_handler.dart b/pkg/compiler/lib/src/inferrer/locals_handler.dart
|
| index b44552906553ddeb537fc002dc550793d9e84ca2..8e4ec2eb3d665677c6428447eef643b567d8d49e 100644
|
| --- a/pkg/compiler/lib/src/inferrer/locals_handler.dart
|
| +++ b/pkg/compiler/lib/src/inferrer/locals_handler.dart
|
| @@ -300,7 +300,8 @@ class LocalsHandler {
|
|
|
| TypeInformation use(Local local) {
|
| if (capturedAndBoxed.containsKey(local)) {
|
| - return inferrer.typeOfElement(capturedAndBoxed[local]);
|
| + FieldElement field = capturedAndBoxed[local];
|
| + return inferrer.typeOfMember(field);
|
| } else {
|
| if (captured.containsKey(local)) {
|
| inferrer.recordCapturedLocalRead(local);
|
| @@ -334,7 +335,7 @@ class LocalsHandler {
|
| }
|
|
|
| if (capturedAndBoxed.containsKey(local)) {
|
| - inferrer.recordTypeOfNonFinalField(node, capturedAndBoxed[local], type);
|
| + inferrer.recordTypeOfNonFinalField(capturedAndBoxed[local], type);
|
| } else if (inTryBlock) {
|
| // We don'TypeInformation know if an assignment in a try block
|
| // will be executed, so all assignments in that block are
|
|
|