| Index: pkg/compiler/lib/src/js_model/closure.dart
|
| diff --git a/pkg/compiler/lib/src/js_model/closure.dart b/pkg/compiler/lib/src/js_model/closure.dart
|
| index 06d8f2141aa62ad3a82d4fef59eec74e6dd611da..e35f4c6e85e3fa900c5f7bb02d142224f4190d08 100644
|
| --- a/pkg/compiler/lib/src/js_model/closure.dart
|
| +++ b/pkg/compiler/lib/src/js_model/closure.dart
|
| @@ -165,10 +165,7 @@ class KernelClosureConversionTask extends ClosureConversionTask<ir.Node> {
|
| entity = constructorBody.constructor;
|
| }
|
|
|
| - ScopeInfo scopeInfo = _scopeMap[entity];
|
| - assert(
|
| - scopeInfo != null, failedAt(entity, "Missing scope info for $entity."));
|
| - return scopeInfo;
|
| + return _scopeMap[entity] ?? getClosureInfoForMember(entity);
|
| }
|
|
|
| // TODO(efortuna): Eventually capturedScopesMap[node] should always
|
| @@ -212,6 +209,17 @@ class KernelClosureConversionTask extends ClosureConversionTask<ir.Node> {
|
| "Closures found for ${_localClosureRepresentationMap.keys}");
|
| return closure;
|
| }
|
| +
|
| + @override
|
| + ClosureRepresentationInfo getClosureInfoForMemberTesting(
|
| + MemberEntity entity) {
|
| + return _memberClosureRepresentationMap[entity];
|
| + }
|
| +
|
| + @override
|
| + ClosureRepresentationInfo getClosureInfoForTesting(ir.Node node) {
|
| + return _localClosureRepresentationMap[node];
|
| + }
|
| }
|
|
|
| class KernelScopeInfo {
|
|
|