library;
//
// Problems in library:
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_class_parametrized_typedef_cycle.dart:11:9: Error: Generic type 'Fisk' can't be used without type arguments in the bounds of its own type variables. It is referenced indirectly through 'Hest'.
// Try providing type arguments to 'Hest' here or to some other raw types in the bounds along the reference chain.
// typedef Fisk = void Function<TypeY extends Hest>();
//         ^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_class_parametrized_typedef_cycle.dart:11:30: Context: Bound of this variable references raw type 'Hest'.
// typedef Fisk = void Function<TypeY extends Hest>();
//                              ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_class_parametrized_typedef_cycle.dart:9:12: Context: Bound of this variable references raw type 'Fisk'.
// class Hest<TypeX extends Fisk> {}
//            ^^^^^
//
import self as self;
import "dart:core" as core;

typedef Fisk = <TypeY extends core::Object* = dynamic>() →* void;
class Hest<TypeX extends <TypeY extends core::Object* = dynamic>() →* void = <TypeY extends core::Object* = dynamic>() →* void> extends core::Object {
  synthetic constructor •() → self::Hest<self::Hest::TypeX*>*
    ;
}
static method main() → dynamic
  ;
