| // 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; |
| |
| class C<T> { |
| void set x(T /*@covariance=genericImpl*/ t) {} |
| T /*@covariance=genericImpl*/ y; |
| } |
| |
| class D implements C<num> { |
| num /*@covariance=genericImpl*/ x; |
| num /*@covariance=genericImpl*/ y; |
| } |
| |
| class E implements C<num> { |
| void set x(num /*@covariance=genericImpl*/ t) {} |
| num get y => null; |
| void set y(num /*@covariance=genericImpl*/ t) {} |
| } |
| |
| void main() {} |