blob: 385dc24a24a7d43b9ccbe997e3ee0c47f69dccdd [file] [log] [blame]
John Messerlybea9ae72015-09-16 13:28:49 -07001// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2// for details. All rights reserved. Use of this source code is governed by a
3// BSD-style license that can be found in the LICENSE file.
4
5// Regression test for dart2js that used to not see side effects of
6// iterator calls made in a "for in".
7
8import "package:expect/expect.dart";
9
10var global = 42;
11var array = [new A()];
12
13class A {
14 get iterator {
15 global = 54;
16 return this;
17 }
18 moveNext() => false;
19
20 bar(a) {
21 for (var a in this) {
22 }
23 }
24}
25
26main() {
27 array[0].bar(global);
28 Expect.equals(54, global);
29}