| library /*isNonNullableByDefault*/; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:8:11: Error: An enum can't declare a non-abstract member named 'index'. |
| // int get index => 42; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:14:14: Error: An enum can't declare a non-abstract member named 'index'. |
| // String get index => "foo"; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:20:13: Error: An enum can't declare a non-abstract member named 'index'. |
| // final int index = 42; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:26:16: Error: An enum can't declare a non-abstract member named 'index'. |
| // List<String> index() => []; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:32:13: Error: An enum can't declare a non-abstract member named 'index'. |
| // Never get index => throw 42; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:38:22: Error: An enum can't declare a non-abstract member named 'index'. |
| // final int foo = 0, index = 1, bar = 2; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:64:18: Error: An enum can't declare a non-abstract member named 'index'. |
| // static int get index => 42; // Error. |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:26:16: Error: Can't declare a member that conflicts with an inherited one. |
| // List<String> index() => []; // Error. |
| // ^^^^^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the inherited member. |
| // final int index; |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:64:18: Error: Can't declare a member that conflicts with an inherited one. |
| // static int get index => 42; // Error. |
| // ^^^^^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the inherited member. |
| // final int index; |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:70:19: Error: Can't declare a member that conflicts with an inherited one. |
| // static void set index(int value) {} // Error. |
| // ^^^^^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the inherited member. |
| // final int index; |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:74:3: Error: Can't declare a member that conflicts with an inherited one. |
| // index // Error. |
| // ^^^^^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the inherited member. |
| // final int index; |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:14:14: Error: The return type of the method 'E2.index' is 'String', which does not match the return type, 'int', of the overridden method, '_Enum.index'. |
| // Change to a subtype of 'int'. |
| // String get index => "foo"; // Error. |
| // ^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the overridden method ('index'). |
| // final int index; |
| // ^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:52:12: Error: The type 'int' of the inherited field '_Enum.index' is not a subtype of the type 'String' of the setter 'E8.index'. |
| // void set index(String value) {} // Error. |
| // ^^^^^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the declaration of the field '_Enum.index'. |
| // final int index; |
| // ^^^^^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:58:14: Error: The return type of the method 'E9.index' is 'double', which does not match the return type, 'int', of the overridden method, '_Enum.index'. |
| // Change to a subtype of 'int'. |
| // double get index; // Error. |
| // ^ |
| // sdk/lib/core/enum.dart:101:13: Context: This is the overridden method ('index'). |
| // final int index; |
| // ^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:55:6: Error: The implementation of 'index' in the non-abstract class 'E9' does not conform to its interface. |
| // enum E9 { |
| // ^^ |
| // sdk/lib/core/enum.dart:101:13: Context: The return type of the method '_Enum.index' is 'int', which does not match the return type, 'double', of the overridden method, 'E9.index'. |
| // Change to a subtype of 'double'. |
| // final int index; |
| // ^ |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:58:14: Context: This is the overridden method ('index'). |
| // double get index; // Error. |
| // ^ |
| // |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:87:6: Error: The implementation of 'index' in the non-abstract class 'E14' does not conform to its interface. |
| // enum E14 implements I14 { element } // Error. |
| // ^^^ |
| // sdk/lib/core/enum.dart:101:13: Context: The return type of the method '_Enum.index' is 'int', which does not match the return type, 'Never', of the overridden method, 'I14.index'. |
| // Change to a subtype of 'Never'. |
| // final int index; |
| // ^ |
| // pkg/front_end/testcases/enhanced_enums/declared_index.dart:84:13: Context: This is the overridden method ('index'). |
| // Never get index; |
| // ^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| class E1 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E1> values = const <self::E1>[self::E1::element]; |
| static const field self::E1 element = const self::E1::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E1 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E1.${this.{core::_Enum::_name}{core::String}}"; |
| get index() → core::int |
| ; |
| } |
| class E2 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E2> values = const <self::E2>[self::E2::element]; |
| static const field self::E2 element = const self::E2::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E2 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E2.${this.{core::_Enum::_name}{core::String}}"; |
| get index() → core::String |
| ; |
| } |
| class E3 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E3> values = const <self::E3>[self::E3::element]; |
| final field core::int index; |
| static const field self::E3 element = const self::E3::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E3 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E3.${this.{core::_Enum::_name}{core::String}}"; |
| } |
| class E4 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E4> values = const <self::E4>[self::E4::element]; |
| static const field self::E4 element = const self::E4::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E4 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E4.${this.{core::_Enum::_name}{core::String}}"; |
| method index() → core::List<core::String> |
| ; |
| } |
| class E5 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E5> values = const <self::E5>[self::E5::element]; |
| static const field self::E5 element = const self::E5::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E5 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E5.${this.{core::_Enum::_name}{core::String}}"; |
| get index() → Never |
| ; |
| } |
| class E6 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E6> values = const <self::E6>[self::E6::element]; |
| final field core::int foo; |
| final field core::int index; |
| final field core::int bar; |
| static const field self::E6 element = const self::E6::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E6 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E6.${this.{core::_Enum::_name}{core::String}}"; |
| } |
| class E7 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E7> values = const <self::E7>[self::E7::element]; |
| static const field self::E7 element = const self::E7::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E7 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E7.${this.{core::_Enum::_name}{core::String}}"; |
| set index(core::int value) → void |
| ; |
| abstract get index() → core::int; |
| } |
| class E8 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E8> values = const <self::E8>[self::E8::element]; |
| static const field self::E8 element = const self::E8::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E8 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E8.${this.{core::_Enum::_name}{core::String}}"; |
| set index(core::String value) → void |
| ; |
| } |
| class E9 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E9> values = const <self::E9>[self::E9::element]; |
| static const field self::E9 element = const self::E9::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E9 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E9.${this.{core::_Enum::_name}{core::String}}"; |
| abstract get index() → core::double; |
| } |
| class E10 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E10> values = const <self::E10>[self::E10::element]; |
| static const field self::E10 element = const self::E10::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E10 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E10.${this.{core::_Enum::_name}{core::String}}"; |
| static get index() → core::int |
| ; |
| } |
| class E11 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E11> values = const <self::E11>[self::E11::element]; |
| static const field self::E11 element = const self::E11::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E11 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E11.${this.{core::_Enum::_name}{core::String}}"; |
| static set index(core::int value) → void |
| ; |
| } |
| class E12 extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E12> values = const <self::E12>[self::E12::index]; |
| static const field self::E12 index = const self::E12::•(0, "index"); |
| const constructor •(core::int index, core::String name) → self::E12 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E12.${this.{core::_Enum::_name}{core::String}}"; |
| } |
| abstract class I13 extends core::Object { |
| synthetic constructor •() → self::I13 |
| ; |
| abstract get index() → core::int; |
| } |
| class E13 extends core::_Enum implements self::I13 /*isEnum*/ { |
| static const field core::List<self::E13> values = const <self::E13>[self::E13::element]; |
| static const field self::E13 element = const self::E13::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E13 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E13.${this.{core::_Enum::_name}{core::String}}"; |
| } |
| abstract class I14 extends core::Object { |
| synthetic constructor •() → self::I14 |
| ; |
| abstract get index() → Never; |
| } |
| class E14 extends core::_Enum implements self::I14 /*isEnum*/ { |
| static const field core::List<self::E14> values = const <self::E14>[self::E14::element]; |
| static const field self::E14 element = const self::E14::•(0, "element"); |
| const constructor •(core::int index, core::String name) → self::E14 |
| : super core::_Enum::•(index, name) |
| ; |
| method toString() → core::String |
| return "E14.${this.{core::_Enum::_name}{core::String}}"; |
| abstract member-signature get index() → Never; -> self::I14::index |
| } |
| static method main() → dynamic |
| ; |
| |
| |
| Extra constant evaluation status: |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:5:6 -> ListConstant(const <E1*>[const E1{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:6:3 -> InstanceConstant(const E1{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:11:6 -> ListConstant(const <E2*>[const E2{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:12:3 -> InstanceConstant(const E2{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:17:6 -> ListConstant(const <E3*>[const E3{E3.index: null, _Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:18:3 -> InstanceConstant(const E3{E3.index: null, _Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:23:6 -> ListConstant(const <E4*>[const E4{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:24:3 -> InstanceConstant(const E4{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:29:6 -> ListConstant(const <E5*>[const E5{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:30:3 -> InstanceConstant(const E5{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:35:6 -> ListConstant(const <E6*>[const E6{E6.foo: null, E6.index: null, E6.bar: null, _Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:36:3 -> InstanceConstant(const E6{E6.foo: null, E6.index: null, E6.bar: null, _Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:41:6 -> ListConstant(const <E7*>[const E7{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:42:3 -> InstanceConstant(const E7{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:49:6 -> ListConstant(const <E8*>[const E8{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:50:3 -> InstanceConstant(const E8{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:55:6 -> ListConstant(const <E9*>[const E9{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:56:3 -> InstanceConstant(const E9{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:61:6 -> ListConstant(const <E10*>[const E10{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:62:3 -> InstanceConstant(const E10{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:67:6 -> ListConstant(const <E11*>[const E11{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:68:3 -> InstanceConstant(const E11{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:73:6 -> ListConstant(const <E12*>[const E12{_Enum.index: 0, _Enum._name: "index"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:74:3 -> InstanceConstant(const E12{_Enum.index: 0, _Enum._name: "index"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:81:6 -> ListConstant(const <E13*>[const E13{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:81:27 -> InstanceConstant(const E13{_Enum.index: 0, _Enum._name: "element"}) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///declared_index.dart:87:6 -> ListConstant(const <E14*>[const E14{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///declared_index.dart:87:27 -> InstanceConstant(const E14{_Enum.index: 0, _Enum._name: "element"}) |
| Extra constant evaluation: evaluated: 98, effectively constant: 28 |