// 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. typedef F1 = void Function(X); typedef F2 = X Function(X); typedef F3 = void Function(); typedef F4 = X Function(X Function(void)); typedef F5 = Y Function(X); typedef F6 = X Function(Y); class A {} abstract class B extends A>> {} //# 01: compile-time error abstract class B extends A>> {} //# 02: compile-time error abstract class B extends A>> {} //# 03: compile-time error abstract class B extends A>> {} //# 04: compile-time error abstract class B extends A>> {} //# 05: compile-time error abstract class B extends A>> {} //# 06: compile-time error abstract class B extends Object //# 07: compile-time error with //# 07: continued A>> {} //# 07: continued abstract class B extends Object //# 08: compile-time error with //# 08: continued A>> {} //# 08: continued abstract class B extends Object //# 09: compile-time error with //# 09: continued A>> {} //# 09: continued abstract class B extends Object //# 10: compile-time error with //# 10: continued A>> {} //# 10: continued abstract class B extends Object //# 11: compile-time error with //# 11: continued A>> {} //# 11: continued abstract class B extends Object //# 12: compile-time error with //# 12: continued A>> {} //# 12: continued abstract class B implements A>> {} //# 13: compile-time error abstract class B implements A>> {} //# 14: compile-time error abstract class B implements A>> {} //# 15: compile-time error abstract class B implements A>> {} //# 16: compile-time error abstract class B implements A>> {} //# 17: compile-time error abstract class B implements A>> {} //# 18: compile-time error abstract class B extends A> {} //# 19: compile-time error abstract class B extends A> {} //# 20: compile-time error // Two errors here: Invariance in superinterface and // generic function type used as actual type argument. abstract class B extends //# 21: compile-time error A()>> {} //# 21: continued abstract class B extends //# 22: compile-time error A> {} //# 22: continued abstract class B extends A> {} //# 23: compile-time error abstract class B extends A> {} //# 24: compile-time error abstract class B extends Object //# 25: compile-time error with //# 25: continued A> {} //# 25: continued abstract class B extends Object //# 26: compile-time error with //# 26: continued A> {} //# 26: continued // Two errors here: Invariance in superinterface and // generic function type used as actual type argument. abstract class B extends Object //# 27: compile-time error with //# 27: continued A()>> {} //# 27: continued abstract class B extends Object //# 28: compile-time error with //# 28: continued A> {} //# 28: continued abstract class B extends Object //# 29: compile-time error with //# 29: continued A> {} //# 29: continued abstract class B extends Object //# 30: compile-time error with //# 30: continued A> {} //# 30: continued abstract class B //# 31: compile-time error implements //# 31: continued A> {} //# 31: continued abstract class B //# 32: compile-time error implements //# 32: continued A> {} //# 32: continued // Two errors here: Invariance in superinterface and // generic function type used as actual type argument. abstract class B //# 33: compile-time error implements //# 33: continued A()>> {} //# 33: continued abstract class B //# 34: compile-time error implements //# 34: continued A> {} //# 34: continued abstract class B //# 35: compile-time error implements //# 35: continued A> {} //# 35: continued abstract class B //# 36: compile-time error implements //# 36: continued A> {} //# 36: continued main() { A(); }