aboutsummaryrefslogtreecommitdiff
path: root/src/parser.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser.hpp')
-rw-r--r--src/parser.hpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/parser.hpp b/src/parser.hpp
index d2dd22667..6127468d4 100644
--- a/src/parser.hpp
+++ b/src/parser.hpp
@@ -27,10 +27,29 @@ enum AddressingMode : u8 {
Addressing_SwizzleVariable = 14, // Swizzle indexed variable
};
+gb_global String const addressing_mode_strings[] = {
+ str_lit("Invalid"),
+ str_lit("NoValue"),
+ str_lit("Value"),
+ str_lit("Context"),
+ str_lit("Variable"),
+ str_lit("Constant"),
+ str_lit("Type"),
+ str_lit("Builtin"),
+ str_lit("ProcGroup"),
+ str_lit("MapIndex"),
+ str_lit("OptionalOk"),
+ str_lit("OptionalOkPtr"),
+ str_lit("SoaVariable"),
+ str_lit("SwizzleValue"),
+ str_lit("SwizzleVariable"),
+};
+
struct TypeAndValue {
Type * type;
AddressingMode mode;
- bool is_lhs; // Debug info
+ bool is_lhs; // Debug info
+ Type * objc_super_target; // Original type of the Obj-C object before being converted to the superclass' type by the objc_super() intrinsic.
ExactValue value;
};
@@ -396,6 +415,7 @@ struct AstSplitArgs {
AST_KIND(Ident, "identifier", struct { \
Token token; \
Entity *entity; \
+ u32 hash; \
}) \
AST_KIND(Implicit, "implicit", Token) \
AST_KIND(Uninit, "uninitialized value", Token) \