| Index: lib/compiler/implementation/resolution/members.dart
|
| diff --git a/lib/compiler/implementation/resolution/members.dart b/lib/compiler/implementation/resolution/members.dart
|
| index d62146da0dd7cba79e9ca326d0d93ba794854a31..0a446c3ee85a85c9c1b7a5dca871e21c0d2a0724 100644
|
| --- a/lib/compiler/implementation/resolution/members.dart
|
| +++ b/lib/compiler/implementation/resolution/members.dart
|
| @@ -2078,13 +2078,18 @@ class ResolverVisitor extends CommonResolverVisitor<Element> {
|
| world.registerDynamicInvocation(name, selector);
|
| }
|
|
|
| + registerImplicitFieldGet(SourceString name) {
|
| + Selector selector = new Selector.getter(name, null);
|
| + world.registerDynamicGetter(name, selector);
|
| + }
|
| +
|
| visitForIn(ForIn node) {
|
| for (final name in const [
|
| const SourceString('iterator'),
|
| - const SourceString('next'),
|
| - const SourceString('hasNext')]) {
|
| + const SourceString('next')]) {
|
| registerImplicitInvocation(name, 0);
|
| }
|
| + registerImplicitFieldGet(const SourceString('hasNext'));
|
| visit(node.expression);
|
| Scope blockScope = new BlockScope(scope);
|
| Node declaration = node.declaredIdentifier;
|
|
|