blob: 47c8a7b658113c4b6b5a259fbe1584452ba71ad8 [file] [log] [blame]
// Copyright (c) 2018, 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.
// @dart = 2.9
class Foo<T> {}
class Bar<T extends Foo<T>> {}
// Should be error here, because Bar completes to Bar<Foo>
class Baz extends Bar {}
// ^^^
// [analyzer] COMPILE_TIME_ERROR.TYPE_ARGUMENT_NOT_MATCHING_BOUNDS
// [cfe] Inferred type argument 'Foo<dynamic>' doesn't conform to the bound 'Foo<T>' of the type variable 'T' on 'Bar'.
void main() {}