| library /*isNonNullableByDefault*/; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/enhanced_enums/setter_getter_type_check.dart:7:3: Error: The type 'E<int>' of the getter 'E.element2' is not a subtype of the type 'E<String>' of the setter 'E.element2'. |
| // - 'E' is from 'pkg/front_end/testcases/enhanced_enums/setter_getter_type_check.dart'. |
| // element2<int>(); |
| // ^^^^^^^^ |
| // pkg/front_end/testcases/enhanced_enums/setter_getter_type_check.dart:10:19: Context: This is the declaration of the setter 'E.element2'. |
| // static void set element2(E<String> val) {} // Error. |
| // ^^^^^^^^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| class E<T extends core::Object? = dynamic> extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E<dynamic>> values = const <self::E<dynamic>>[self::E::element, self::E::element2]; |
| static const field self::E<core::int> element = const self::E::•<core::int>(0, "element"); |
| static const field self::E<core::int> element2 = const self::E::•<core::int>(1, "element2"); |
| const constructor •(core::int #index, core::String #name) → self::E<self::E::T%> |
| : super core::_Enum::•(#index, #name) |
| ; |
| method toString() → core::String |
| return "E.${this.{core::_Enum::_name}{core::String}}"; |
| static set element(self::E<core::int> val) → void |
| ; |
| static set element2(self::E<core::String> val) → void |
| ; |
| } |
| static method main() → dynamic |
| ; |
| |
| |
| Extra constant evaluation status: |
| Evaluated: ListLiteral @ org-dartlang-testcase:///setter_getter_type_check.dart:5:6 -> ListConstant(const <E<dynamic>*>[const E<int*>{_Enum.index: 0, _Enum._name: "element"}, const E<int*>{_Enum.index: 1, _Enum._name: "element2"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///setter_getter_type_check.dart:6:3 -> InstanceConstant(const E<int*>{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///setter_getter_type_check.dart:7:3 -> InstanceConstant(const E<int*>{_Enum.index: 1, _Enum._name: "element2"}) |
| Extra constant evaluation: evaluated: 8, effectively constant: 3 |