| Index: pkg/compiler/lib/src/closure.dart
|
| diff --git a/pkg/compiler/lib/src/closure.dart b/pkg/compiler/lib/src/closure.dart
|
| index ac68fbd45f8249a36219cbe57cbb9cb1ca9fbe2d..4aaa293a517a487019f9f1d0da5edbc01a2695fe 100644
|
| --- a/pkg/compiler/lib/src/closure.dart
|
| +++ b/pkg/compiler/lib/src/closure.dart
|
| @@ -1069,12 +1069,16 @@ class ClosureTranslator extends Visitor {
|
| inTryStatement = oldInTryStatement;
|
| }
|
|
|
| - visitAsyncForIn(AsyncForIn node) {
|
| - // An `await for` loop is enclosed in an implicit try-finally.
|
| - bool oldInTryStatement = inTryStatement;
|
| - inTryStatement = true;
|
| - visitLoop(node);
|
| - inTryStatement = oldInTryStatement;
|
| + visitForIn(ForIn node) {
|
| + if (node.awaitToken != null) {
|
| + // An `await for` loop is enclosed in an implicit try-finally.
|
| + bool oldInTryStatement = inTryStatement;
|
| + inTryStatement = true;
|
| + visitLoop(node);
|
| + inTryStatement = oldInTryStatement;
|
| + } else {
|
| + visitLoop(node);
|
| + }
|
| }
|
| }
|
|
|
|
|