blob: 38f62b77cdab9a9f0bcc16f2baed6341b10e50a6 [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.
// @dart=2.9
/*@testedFeatures=inference*/
library test;
// I1::x depends on y, which depends on C::x. Although C::x overrides I1::x, it
// does not depend on it, since its type is already specified. So there is no
// circularity.
class I1 {
final x = y;
}
abstract class I2 {
num get x;
}
class C extends Object implements I1, I2 {
int get x => 0;
}
var y = new C(). /*@target=C.x*/ x;
main() {}