blob: 87424ad408828340fb34222d7f5e6de2efa13334 [file] [log] [blame]
library;
//
// Problems in library:
//
// pkg/front_end/testcases/class_modifiers/invalid_enum_modifiers.dart:5:1: Error: Enums can't be declared to be 'base'.
// Try removing the keyword 'base'.
// base enum Base { v }
// ^^^^
//
// pkg/front_end/testcases/class_modifiers/invalid_enum_modifiers.dart:6:1: Error: Enums can't be declared to be 'final'.
// Try removing the keyword 'final'.
// final enum Final { v }
// ^^^^^
//
// pkg/front_end/testcases/class_modifiers/invalid_enum_modifiers.dart:7:1: Error: Enums can't be declared to be 'interface'.
// Try removing the keyword 'interface'.
// interface enum Interface { v }
// ^^^^^^^^^
//
// pkg/front_end/testcases/class_modifiers/invalid_enum_modifiers.dart:8:1: Error: Enums can't be declared to be 'sealed'.
// Try removing the keyword 'sealed'.
// sealed enum Sealed { v }
// ^^^^^^
//
import self as self;
import "dart:core" as core;
class Base extends core::_Enum /*isEnum*/ {
static const field core::List<self::Base> values = const <self::Base>[self::Base::v];
enum-element static const field self::Base v = const self::Base::•(0, "v");
const synthetic constructor •(core::int #index, core::String #name) → self::Base
: super core::_Enum::•(#index, #name)
;
method _enumToString() core::String
return "Base.${this.{core::_Enum::_name}{core::String}}";
}
class Final extends core::_Enum /*isEnum*/ {
static const field core::List<self::Final> values = const <self::Final>[self::Final::v];
enum-element static const field self::Final v = const self::Final::•(0, "v");
const synthetic constructor •(core::int #index, core::String #name) → self::Final
: super core::_Enum::•(#index, #name)
;
method _enumToString() core::String
return "Final.${this.{core::_Enum::_name}{core::String}}";
}
class Interface extends core::_Enum /*isEnum*/ {
static const field core::List<self::Interface> values = const <self::Interface>[self::Interface::v];
enum-element static const field self::Interface v = const self::Interface::•(0, "v");
const synthetic constructor •(core::int #index, core::String #name) → self::Interface
: super core::_Enum::•(#index, #name)
;
method _enumToString() core::String
return "Interface.${this.{core::_Enum::_name}{core::String}}";
}
class Sealed extends core::_Enum /*isEnum*/ {
static const field core::List<self::Sealed> values = const <self::Sealed>[self::Sealed::v];
enum-element static const field self::Sealed v = const self::Sealed::•(0, "v");
const synthetic constructor •(core::int #index, core::String #name) → self::Sealed
: super core::_Enum::•(#index, #name)
;
method _enumToString() core::String
return "Sealed.${this.{core::_Enum::_name}{core::String}}";
}
Extra constant evaluation status:
Evaluated: ListLiteral @ org-dartlang-testcase:///invalid_enum_modifiers.dart:5:11 -> ListConstant(const <Base>[const Base{_Enum.index: 0, _Enum._name: "v"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///invalid_enum_modifiers.dart:5:18 -> InstanceConstant(const Base{_Enum.index: 0, _Enum._name: "v"})
Evaluated: ListLiteral @ org-dartlang-testcase:///invalid_enum_modifiers.dart:6:12 -> ListConstant(const <Final>[const Final{_Enum.index: 0, _Enum._name: "v"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///invalid_enum_modifiers.dart:6:20 -> InstanceConstant(const Final{_Enum.index: 0, _Enum._name: "v"})
Evaluated: ListLiteral @ org-dartlang-testcase:///invalid_enum_modifiers.dart:7:16 -> ListConstant(const <Interface>[const Interface{_Enum.index: 0, _Enum._name: "v"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///invalid_enum_modifiers.dart:7:28 -> InstanceConstant(const Interface{_Enum.index: 0, _Enum._name: "v"})
Evaluated: ListLiteral @ org-dartlang-testcase:///invalid_enum_modifiers.dart:8:13 -> ListConstant(const <Sealed>[const Sealed{_Enum.index: 0, _Enum._name: "v"}])
Evaluated: ConstructorInvocation @ org-dartlang-testcase:///invalid_enum_modifiers.dart:8:22 -> InstanceConstant(const Sealed{_Enum.index: 0, _Enum._name: "v"})
Extra constant evaluation: evaluated: 28, effectively constant: 8