blob: 4f06f3ad2f37b602423a7d2c548d2daf0a992a1e [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;
import 'dart:async';
T f<T>() => null;
class D<T> {}
class E<T> extends D<T> {}
class B<T> {
D<T> g(E<T> x) => null;
}
class C<U> extends B<Future<U>> {
E<Future<U>> g(Object x) => null;
void h() {
var /*@ type=D<Future<C::U*>*>* */ x =
super. /*@target=B.g*/ g(/*@ typeArgs=E<Future<C::U*>*>* */ f());
}
}
main() {}