| library; | 
 | // | 
 | // Problems in library: | 
 | // | 
 | // pkg/front_end/testcases/nnbd/issue44455.dart:6:19: Error: Type argument 'X' doesn't conform to the bound 'num' of the type variable 'Y' on 'F'. | 
 | // Try changing type arguments so that they conform to the bounds. | 
 | // class A<X extends F<X>> {} | 
 | //                   ^ | 
 | // pkg/front_end/testcases/nnbd/issue44455.dart:5:11: Context: This is the type variable whose bound isn't conformed to. | 
 | // typedef F<Y extends num> = Y Function(); | 
 | //           ^ | 
 | // | 
 | // pkg/front_end/testcases/nnbd/issue44455.dart:8:20: Error: Type argument 'X' doesn't conform to the bound 'num' of the type variable 'Y' on 'F2'. | 
 | // Try changing type arguments so that they conform to the bounds. | 
 | // class A2<X extends F2<X>> {} | 
 | //                    ^ | 
 | // pkg/front_end/testcases/nnbd/issue44455.dart:9:12: Context: This is the type variable whose bound isn't conformed to. | 
 | // typedef F2<Y extends num> = Y Function(); | 
 | //            ^ | 
 | // | 
 | import self as self; | 
 | import "dart:core" as core; | 
 |  | 
 | typedef F<Y extends core::num> = () → Y; | 
 | typedef F2<Y extends core::num> = () → Y; | 
 | class A<X extends () → self::A::X = () → dynamic> extends core::Object { | 
 |   synthetic constructor •() → self::A<self::A::X> | 
 |     : super core::Object::•() | 
 |     ; | 
 | } | 
 | class A2<X extends () → self::A2::X = () → dynamic> extends core::Object { | 
 |   synthetic constructor •() → self::A2<self::A2::X> | 
 |     : super core::Object::•() | 
 |     ; | 
 | } | 
 | static method main() → dynamic {} |