blob: e1bda0fc9915c8e32adec0b43626ba230e664242 [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:11:9: Error: Generic type 'A' can't be used without type arguments in a type variable bound.
// Try providing type arguments to 'A' here.
// class B<TypeY extends A, TypeZ extends A> {}
// ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:9:9: Context: Bound of this variable references variable 'TypeX' from the same declaration.
// class A<TypeX extends A<TypeX>> {}
// ^^^^^
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:11:26: Error: Generic type 'A' can't be used without type arguments in a type variable bound.
// Try providing type arguments to 'A' here.
// class B<TypeY extends A, TypeZ extends A> {}
// ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:9:9: Context: Bound of this variable references variable 'TypeX' from the same declaration.
// class A<TypeX extends A<TypeX>> {}
// ^^^^^
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:13:13: Error: Generic type 'A' can't be used without type arguments in a type variable bound.
// Try providing type arguments to 'A' here.
// extension C<TypeY extends A, TypeZ extends A> on int {}
// ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:9:9: Context: Bound of this variable references variable 'TypeX' from the same declaration.
// class A<TypeX extends A<TypeX>> {}
// ^^^^^
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:13:30: Error: Generic type 'A' can't be used without type arguments in a type variable bound.
// Try providing type arguments to 'A' here.
// extension C<TypeY extends A, TypeZ extends A> on int {}
// ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:9:9: Context: Bound of this variable references variable 'TypeX' from the same declaration.
// class A<TypeX extends A<TypeX>> {}
// ^^^^^
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:15:11: Error: Generic type 'A' can't be used without type arguments in a type variable bound.
// Try providing type arguments to 'A' here.
// typedef D<TypeY extends A, TypeZ extends A> = int;
// ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:9:9: Context: Bound of this variable references variable 'TypeX' from the same declaration.
// class A<TypeX extends A<TypeX>> {}
// ^^^^^
//
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:15:28: Error: Generic type 'A' can't be used without type arguments in a type variable bound.
// Try providing type arguments to 'A' here.
// typedef D<TypeY extends A, TypeZ extends A> = int;
// ^^^^^
// pkg/front_end/testcases/instantiate_to_bound/non_simple_for_each.dart:9:9: Context: Bound of this variable references variable 'TypeX' from the same declaration.
// class A<TypeX extends A<TypeX>> {}
// ^^^^^
//
import self as self;
import "dart:core" as core;
typedef D<unrelated TypeY extends self::A<self::A<dynamic>> = dynamic, unrelated TypeZ extends self::A<self::A<dynamic>> = dynamic> = core::int;
class A<TypeX extends self::A<self::A::TypeX> = self::A<dynamic>> extends core::Object {
synthetic constructor •() self::A<self::A::TypeX>
;
}
class B<TypeY extends self::A<self::A<dynamic>> = dynamic, TypeZ extends self::A<self::A<dynamic>> = dynamic> extends core::Object {
synthetic constructor •() self::B<self::B::TypeY, self::B::TypeZ>
;
}
extension C<TypeY extends self::A<self::A<dynamic>> = dynamic, TypeZ extends self::A<self::A<dynamic>> = dynamic> on core::int {
}
static method main() dynamic
;
static method /* from org-dartlang-sdk:///sdk/lib/_internal/vm_shared/lib/integers_patch.dart */ _#D#fromEnvironment#tearOff<unrelated TypeY extends self::A<self::A<dynamic>> = dynamic, unrelated TypeZ extends self::A<self::A<dynamic>> = dynamic>(core::String name, {has-declared-initializer core::int defaultValue}) → core::int
return core::int::fromEnvironment(name, defaultValue: defaultValue);