aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2021-07-12 16:45:54 +0100
committergingerBill <bill@gingerbill.org>2021-07-12 16:45:54 +0100
commit3930a32b0c1fd16f8fda862248c6abbbe47c747d (patch)
treed0db6b6ddaf3afc52d90452d26db89b55d75263e /src
parent76707e1d2f3a33bc5dabf367318ccd76ce242b6a (diff)
`enum Addressing_Mode : u8;`
Diffstat (limited to 'src')
-rw-r--r--src/checker.hpp4
-rw-r--r--src/parser.hpp3
2 files changed, 4 insertions, 3 deletions
diff --git a/src/checker.hpp b/src/checker.hpp
index 6a00ce0e1..b760482ff 100644
--- a/src/checker.hpp
+++ b/src/checker.hpp
@@ -9,15 +9,15 @@ struct Checker;
struct CheckerInfo;
struct CheckerContext;
-enum AddressingMode;
+enum AddressingMode : u8;
struct TypeAndValue;
// ExprInfo stores information used for "untyped" expressions
struct ExprInfo {
AddressingMode mode;
+ bool is_lhs; // Debug info
Type * type;
ExactValue value;
- bool is_lhs; // Debug info
};
gb_inline ExprInfo *make_expr_info(AddressingMode mode, Type *type, ExactValue const &value, bool is_lhs) {
diff --git a/src/parser.hpp b/src/parser.hpp
index b14e336c3..390bfbba2 100644
--- a/src/parser.hpp
+++ b/src/parser.hpp
@@ -6,7 +6,7 @@ struct DeclInfo;
struct AstFile;
struct AstPackage;
-enum AddressingMode {
+enum AddressingMode : u8 {
Addressing_Invalid = 0, // invalid addressing mode
Addressing_NoValue = 1, // no value (void in C)
Addressing_Value = 2, // computed value (rvalue)
@@ -29,6 +29,7 @@ enum AddressingMode {
struct TypeAndValue {
AddressingMode mode;
+ bool is_lhs; // Debug info
Type * type;
ExactValue value;
};