// Copyright (c) 2019, 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. // Tests variance usage multiple type parameters. // SharedOptions=--enable-experiment=variance typedef CovFunction = T Function(); typedef ContraFunction = void Function(T); class Covariant {} class Contravariant {} class A {} class B {} class C extends A {} class D extends B {} class E extends B {} class F extends A, Contravariant> {} class G extends A>, Contravariant>> {} class H extends B, Covariant, Covariant> {} class I extends A, ContraFunction> {} class J extends A>, ContraFunction>> {} class K extends B, CovFunction, CovFunction> {} main() { A a = A(); B b = B(); C c = C(); D d = D(); E e = E(); F f = F(); G g = G(); H h = H(); I i = I(); J j = J(); K k = K(); }