| Index: pkg/front_end/testcases/runtime_checks/contravariant_generic_return_tear_off.dart
|
| diff --git a/pkg/front_end/testcases/runtime_checks/contravariant_generic_return_tear_off.dart b/pkg/front_end/testcases/runtime_checks/contravariant_generic_return_tear_off.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..dc1bfeef68d049f2c18ff39b61357f0aea5fda0b
|
| --- /dev/null
|
| +++ b/pkg/front_end/testcases/runtime_checks/contravariant_generic_return_tear_off.dart
|
| @@ -0,0 +1,29 @@
|
| +// 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.
|
| +
|
| +/*@testedFeatures=checks*/
|
| +library test;
|
| +
|
| +typedef void F<T>(T x);
|
| +typedef F<T> G<T>();
|
| +
|
| +class C<T> {
|
| + F<T> _x;
|
| + C(this._x);
|
| + F<T> f() => _x;
|
| +}
|
| +
|
| +G<num> g(C<num> c) {
|
| + return c. /*@checkTearOff=() -> (num) -> void*/ f;
|
| +}
|
| +
|
| +void h(int i) {
|
| + print('$i');
|
| +}
|
| +
|
| +void test() {
|
| + var x = g(new C<int>(h));
|
| +}
|
| +
|
| +void main() {}
|
|
|