62f84880ef
Closes #40520 Closes #40948 Closes #40425 Change-Id: I0aa3cfa51b410c90dd0bea963846eeb6b2e73efb Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/140540 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
31 lines
650 B
Dart
31 lines
650 B
Dart
// 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 is a regression test for http://dartbug.com/40600.
|
|
|
|
import 'dart:async';
|
|
|
|
class B<Y> {
|
|
bar(FutureOr<Y> y) {}
|
|
}
|
|
|
|
class A<X> {
|
|
final b = new B<X>();
|
|
foo([FutureOr<X>? x]) {
|
|
if (x is Future<X>) {
|
|
b.bar(x as FutureOr<X>);
|
|
}
|
|
}
|
|
}
|
|
|
|
class C<T> {
|
|
FutureOr<T> baz<X extends FutureOr<T>>(FutureOr<T> x) => x;
|
|
}
|
|
|
|
class D<T> extends C<T> {
|
|
FutureOr<T> baz<X extends FutureOr<T>>(FutureOr<T> x) => x;
|
|
}
|
|
|
|
main() {}
|