@@ -130,7 +130,7 @@ struct template_argument;
130
130
131
131
struct primary_expression_node
132
132
{
133
- enum active { empty=0 , identifier, expression_list, id_expression, declaration, inspect, literal };
133
+ enum active : std:: uint8_t { empty=0 , identifier, expression_list, id_expression, declaration, inspect, literal };
134
134
std::variant<
135
135
std::monostate,
136
136
token const *,
@@ -666,7 +666,7 @@ auto binary_expression_node<Name, Term>::is_standalone_expression() const
666
666
}
667
667
668
668
669
- enum class passing_style { in=0 , copy, inout, out, move, forward, invalid };
669
+ enum class passing_style : std:: uint8_t { in=0 , copy, inout, out, move, forward, invalid };
670
670
auto to_passing_style (token const & t) -> passing_style {
671
671
if (t.type () == lexeme::Identifier) {
672
672
if (t == " in" ) { return passing_style::in; }
@@ -1152,7 +1152,7 @@ struct template_args_tag { };
1152
1152
1153
1153
struct template_argument
1154
1154
{
1155
- enum active { empty=0 , expression, type_id };
1155
+ enum active : std:: uint8_t { empty=0 , expression, type_id };
1156
1156
source_position comma;
1157
1157
std::variant<
1158
1158
std::monostate,
@@ -1338,7 +1338,7 @@ struct type_id_node
1338
1338
int dereference_cnt = {};
1339
1339
token const * suspicious_initialization = {};
1340
1340
1341
- enum active { empty=0 , qualified, unqualified, function, keyword };
1341
+ enum active : std:: uint8_t { empty=0 , qualified, unqualified, function, keyword };
1342
1342
std::variant<
1343
1343
std::monostate,
1344
1344
std::unique_ptr<qualified_id_node>,
@@ -1660,7 +1660,7 @@ struct id_expression_node
1660
1660
{
1661
1661
source_position pos;
1662
1662
1663
- enum active { empty=0 , qualified, unqualified };
1663
+ enum active : std:: uint8_t { empty=0 , qualified, unqualified };
1664
1664
std::variant<
1665
1665
std::monostate,
1666
1666
std::unique_ptr<qualified_id_node>,
@@ -2141,7 +2141,7 @@ struct statement_node
2141
2141
// type(s) used in a std::unique_ptr as a member
2142
2142
~statement_node ();
2143
2143
2144
- enum active { expression=0 , compound , selection, declaration, return_, iteration, using_, contract, inspect, jump };
2144
+ enum active : std:: uint8_t { expression=0 , compound , selection, declaration, return_, iteration, using_, contract, inspect, jump };
2145
2145
std::variant<
2146
2146
std::unique_ptr<expression_statement_node>,
2147
2147
std::unique_ptr<compound_statement_node>,
@@ -2269,7 +2269,7 @@ struct parameter_declaration_node
2269
2269
passing_style pass = passing_style::in;
2270
2270
int ordinal = 1 ;
2271
2271
2272
- enum class modifier { none=0 , implicit, virtual_, override_, final_ };
2272
+ enum class modifier : std:: uint8_t { none=0 , implicit, virtual_, override_, final_ };
2273
2273
modifier mod = modifier::none;
2274
2274
2275
2275
std::unique_ptr<declaration_node> declaration;
@@ -2440,7 +2440,7 @@ struct function_type_node
2440
2440
passing_style pass = passing_style::move;
2441
2441
};
2442
2442
2443
- enum active { empty = 0 , id, list };
2443
+ enum active : std:: uint8_t { empty = 0 , id, list };
2444
2444
std::variant<
2445
2445
std::monostate,
2446
2446
single_type_id,
@@ -2803,7 +2803,7 @@ struct alias_node
2803
2803
};
2804
2804
2805
2805
2806
- enum class accessibility { default_ = 0 , public_, protected_, private_ };
2806
+ enum class accessibility : std:: uint8_t { default_ = 0 , public_, protected_, private_ };
2807
2807
2808
2808
auto to_string (accessibility a)
2809
2809
-> std::string
@@ -3251,7 +3251,7 @@ struct declaration_node
3251
3251
auto parent_is_polymorphic () const -> bool
3252
3252
{ return parent_declaration && parent_declaration->is_polymorphic (); }
3253
3253
3254
- enum which {
3254
+ enum which : std:: uint8_t {
3255
3255
functions = 1 ,
3256
3256
objects = 2 ,
3257
3257
types = 4 ,
0 commit comments