From c016e245eb173650203cbfaf922b06d97d839440 Mon Sep 17 00:00:00 2001 From: Ed_ Date: Sat, 7 Dec 2024 20:49:43 -0500 Subject: [PATCH] still misbehaving (going to try alignas next...) --- gen_c_library/c_library.cpp | 6 +- project/components/ast.hpp | 14 ++-- project/components/ast_types.hpp | 122 +++++++++++++++---------------- 3 files changed, 71 insertions(+), 71 deletions(-) diff --git a/gen_c_library/c_library.cpp b/gen_c_library/c_library.cpp index 1cec0c8..1a5bcdb 100644 --- a/gen_c_library/c_library.cpp +++ b/gen_c_library/c_library.cpp @@ -237,15 +237,15 @@ int gen_main() R"(#define AST_ArrSpecs_Cap \ ( \ AST_POD_Size \ + - sizeof(StringCached) \ - sizeof(AST*) * 3 \ - sizeof(Token*) \ - sizeof(AST*) \ - - sizeof(StringCached) \ - sizeof(CodeType) \ - sizeof(ModuleFlag) \ - - sizeof(int) \ + - sizeof(u32) \ ) \ -/ sizeof(int) - 1 +/ sizeof(Specifier) - 1 )" )); ast.append(def); diff --git a/project/components/ast.hpp b/project/components/ast.hpp index e5d656c..e0c8bc9 100644 --- a/project/components/ast.hpp +++ b/project/components/ast.hpp @@ -298,15 +298,15 @@ constexpr static int AST_ArrSpecs_Cap = ( AST_POD_Size - - sizeof(AST*) * 3 - - sizeof(parser::Token*) - - sizeof(AST*) - sizeof(StringCached) + - sizeof(AST*) * 3 + - sizeof(Token*) + - sizeof(AST*) - sizeof(CodeType) - sizeof(ModuleFlag) - - sizeof(int) + - sizeof(u32) ) -/ sizeof(int) - 1; // -1 for 4 extra bytes +/ sizeof(Specifier) - 1; /* Simple AST POD with functionality to seralize into C++ syntax. @@ -350,6 +350,7 @@ struct AST Code NextSpecs; // Specifiers; If ArrSpecs is full, then NextSpecs is used. }; }; + StringCached Name; union { Code Prev; Code Front; @@ -361,7 +362,6 @@ struct AST }; Token* Token; // Reference to starting token, only avaialble if it was derived from parsing. Code Parent; - StringCached Name; CodeType Type; // CodeFlag CodeFlags; ModuleFlag ModuleFlags; @@ -374,7 +374,7 @@ struct AST s32 VarConstructorInit; // Used by variables to know that initialization is using a constructor expression instead of an assignment expression. }; }; -static_assert( sizeof(AST) == AST_POD_Size, "ERROR: AST POD is not size of AST_POD_Size" ); +static_assert( sizeof(AST) == AST_POD_Size, "ERROR: AST is not size of AST_POD_Size" ); #if GEN_COMPILER_CPP // Uses an implicitly overloaded cast from the AST to the desired code type. diff --git a/project/components/ast_types.hpp b/project/components/ast_types.hpp index 8841408..179c473 100644 --- a/project/components/ast_types.hpp +++ b/project/components/ast_types.hpp @@ -13,11 +13,11 @@ struct AST_Body { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; + StringCached Name; Code Front; Code Back; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) ]; s32 NumEntries; @@ -30,11 +30,11 @@ struct AST_Attributes char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -46,11 +46,11 @@ struct AST_BaseClass union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -63,11 +63,11 @@ struct AST_Comment char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -88,11 +88,11 @@ struct AST_Class char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; CodeTypename Prev; CodeTypename Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; AccessSpec ParentAccess; @@ -114,11 +114,11 @@ struct AST_Constructor char _PAD_PROPERTIES_2_ [ sizeof(AST*) * 2 ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -130,11 +130,11 @@ struct AST_Define char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -154,11 +154,11 @@ struct AST_Destructor char _PAD_PROPERTIES_3_ [ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -179,11 +179,11 @@ struct AST_Enum char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; @@ -196,11 +196,11 @@ struct AST_Exec char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -212,11 +212,11 @@ struct AST_Expr union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -227,11 +227,11 @@ struct AST_Expr_Assign union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -242,11 +242,11 @@ struct AST_Expr_Alignof union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -257,11 +257,11 @@ struct AST_Expr_Binary union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -272,11 +272,11 @@ struct AST_Expr_CStyleCast union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -287,11 +287,11 @@ struct AST_Expr_FunctionalCast union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -302,11 +302,11 @@ struct AST_Expr_CppCast union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -317,11 +317,11 @@ struct AST_Expr_ProcCall union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -332,11 +332,11 @@ struct AST_Expr_Decltype union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -347,11 +347,11 @@ struct AST_Expr_Comma union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -362,11 +362,11 @@ struct AST_Expr_AMS union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -377,11 +377,11 @@ struct AST_Expr_Sizeof union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -392,11 +392,11 @@ struct AST_Expr_Subscript union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -407,11 +407,11 @@ struct AST_Expr_Ternary union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -422,11 +422,11 @@ struct AST_Expr_UnaryPrefix union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -437,11 +437,11 @@ struct AST_Expr_UnaryPostfix union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -452,11 +452,11 @@ struct AST_Expr_Element union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -474,11 +474,11 @@ struct AST_Extern char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -490,11 +490,11 @@ struct AST_Include char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -512,11 +512,11 @@ struct AST_Friend char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -537,11 +537,11 @@ struct AST_Fn char _PAD_PROPERTIES_ [ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(u32) ]; @@ -551,11 +551,11 @@ static_assert( sizeof(AST_Fn) == sizeof(AST), "ERROR: AST_Fn is not the same siz struct AST_Module { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(u32) ]; @@ -572,11 +572,11 @@ struct AST_NS char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(u32) ]; @@ -598,11 +598,11 @@ struct AST_Operator char _PAD_PROPERTIES_ [ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; Operator Op; @@ -624,11 +624,11 @@ struct AST_OpCast char _PAD_PROPERTIES_3_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -648,11 +648,11 @@ struct AST_Param // char _PAD_PROPERTIES_3_[sizeof( AST* )]; }; }; + StringCached Name; CodeParam Last; CodeParam Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) ]; s32 NumEntries; @@ -665,11 +665,11 @@ struct AST_Pragma char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -681,11 +681,11 @@ struct AST_PreprocessCond char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; StringCached Content; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -694,12 +694,12 @@ static_assert( sizeof(AST_PreprocessCond) == sizeof(AST), "ERROR: AST_Preprocess struct AST_Specifiers { Specifier ArrSpecs[ AST_ArrSpecs_Cap ]; + StringCached Name; CodeSpecifiers NextSpecs; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) ]; s32 NumEntries; @@ -712,11 +712,11 @@ struct AST_Stmt union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -727,11 +727,11 @@ struct AST_Stmt_Break union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -742,11 +742,11 @@ struct AST_Stmt_Case union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -757,11 +757,11 @@ struct AST_Stmt_Continue union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -772,11 +772,11 @@ struct AST_Stmt_Decl union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -787,11 +787,11 @@ struct AST_Stmt_Do union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -802,11 +802,11 @@ struct AST_Stmt_Expr union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -817,11 +817,11 @@ struct AST_Stmt_Else union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -832,11 +832,11 @@ struct AST_Stmt_If union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -847,11 +847,11 @@ struct AST_Stmt_For union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -862,11 +862,11 @@ struct AST_Stmt_Goto union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -877,11 +877,11 @@ struct AST_Stmt_Label union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -892,11 +892,11 @@ struct AST_Stmt_Switch union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -907,11 +907,11 @@ struct AST_Stmt_While union { char _PAD_[ sizeof(Specifier) * AST_ArrSpecs_Cap + sizeof(AST*) ]; }; + StringCached Name; CodeExpr Prev; CodeExpr Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) + sizeof(u32) ]; }; @@ -933,11 +933,11 @@ struct AST_Struct char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; CodeTypename Prev; CodeTypename Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; AccessSpec ParentAccess; @@ -956,11 +956,11 @@ struct AST_Template char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(u32) ]; @@ -985,11 +985,11 @@ struct AST_Type // CodeSpecifiers SpecsFuncSuffix; // Only used for function signatures }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) ]; b32 IsParamPack; @@ -1012,11 +1012,11 @@ struct AST_Typename CodeSpecifiers SpecsFuncSuffix; // Only used for function signatures }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; char _PAD_UNUSED_[ sizeof(ModuleFlag) ]; b32 IsParamPack; @@ -1035,11 +1035,11 @@ struct AST_Typedef char _PAD_PROPERTIES_2_[ sizeof(AST*) * 3 ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; b32 IsFunction; @@ -1059,11 +1059,11 @@ struct AST_Union char _PAD_PROPERTIES_2_[ sizeof(AST*) ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(u32) ]; @@ -1083,11 +1083,11 @@ struct AST_Using char _PAD_PROPERTIES_[ sizeof(AST*) * 3 ]; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; char _PAD_UNUSED_[ sizeof(u32) ]; @@ -1109,11 +1109,11 @@ struct AST_Var CodeVar NextVar; }; }; + StringCached Name; Code Prev; Code Next; Token* Tok; Code Parent; - StringCached Name; CodeType Type; ModuleFlag ModuleFlags; s32 VarConstructorInit;