| library; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/enhanced_enums/redirecting_to_unrelated_factory.dart:9:29: Error: The constructor function type 'A Function()' isn't a subtype of 'E Function()'. |
| // - 'A' is from 'pkg/front_end/testcases/enhanced_enums/redirecting_to_unrelated_factory.dart'. |
| // - 'E' is from 'pkg/front_end/testcases/enhanced_enums/redirecting_to_unrelated_factory.dart'. |
| // const factory E.redir() = A; // Error. |
| // ^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| class E extends core::_Enum /*isEnum*/ { |
| static const field core::List<self::E> values = const <self::E>[self::E::element]; |
| enum-element static const field self::E element = const self::E::•(0, "element"); |
| const constructor •(core::int #index, core::String #name) → self::E |
| : super core::_Enum::•(#index, #name) |
| ; |
| method _enumToString() → core::String |
| return "E.${this.{core::_Enum::_name}{core::String}}"; |
| static factory redir() → self::E |
| return invalid-expression "pkg/front_end/testcases/enhanced_enums/redirecting_to_unrelated_factory.dart:9:29: Error: The constructor function type 'A Function()' isn't a subtype of 'E Function()'. |
| - 'A' is from 'pkg/front_end/testcases/enhanced_enums/redirecting_to_unrelated_factory.dart'. |
| - 'E' is from 'pkg/front_end/testcases/enhanced_enums/redirecting_to_unrelated_factory.dart'. |
| const factory E.redir() = A; // Error. |
| ^"; |
| } |
| class A extends core::Object /*hasConstConstructor*/ { |
| const constructor •() → self::A |
| : super core::Object::•() |
| ; |
| } |
| |
| |
| Extra constant evaluation status: |
| Evaluated: ListLiteral @ org-dartlang-testcase:///redirecting_to_unrelated_factory.dart:5:6 -> ListConstant(const <E>[const E{_Enum.index: 0, _Enum._name: "element"}]) |
| Evaluated: ConstructorInvocation @ org-dartlang-testcase:///redirecting_to_unrelated_factory.dart:6:3 -> InstanceConstant(const E{_Enum.index: 0, _Enum._name: "element"}) |
| Extra constant evaluation: evaluated: 7, effectively constant: 2 |