blob: 81cb1b1d6009e37cda576bbefe5fdd7116e39eb9 [file] [log] [blame]
// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// This test verifies that a type comparison happening in the body of a loop
// causes the type to be of interest after the loop, regardless of the type of
// loop.
doLoop(Object o, bool f()) {
do {
if (o is int) print('');
} while (f());
o = 1;
/*int*/ o;
}
forEachLoop(Object o, List values) {
for (var _ in values) {
if (o is int) print('');
}
o = 1;
/*int*/ o;
}
forLoop(Object o, int count) {
for (int i = 0; i < count; i++) {
if (o is int) print('');
}
o = 1;
/*int*/ o;
}
whileloop(Object o, bool f()) {
while (f()) {
if (o is int) print('');
}
o = 1;
/*int*/ o;
}