blob: 09fd2cf9de4503c00cbc33fb1084c3d0e7e2e9ab [file] [log] [blame]
// Copyright (c) 2017, 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.
class A {}
class B extends A {}
void main() {
Object o = <A>[];
for (var x in o) {}
// ^
// [analyzer] STATIC_TYPE_WARNING.FOR_IN_OF_INVALID_TYPE
// [cfe] The type 'Object' used in the 'for' loop must implement 'Iterable<dynamic>'.
for (B x in o) {}
// ^
// [analyzer] STATIC_TYPE_WARNING.FOR_IN_OF_INVALID_TYPE
// [cfe] The type 'Object' used in the 'for' loop must implement 'Iterable<dynamic>'.
B y;
for (y in o) {}
// ^
// [analyzer] STATIC_TYPE_WARNING.FOR_IN_OF_INVALID_TYPE
// [cfe] The type 'Object' used in the 'for' loop must implement 'Iterable<dynamic>'.
}