Naive preprocessor support initial implementation (compiles and runs, not heavily tested)

This commit is contained in:
2023-07-30 01:21:04 -04:00
parent 3d7cb85e71
commit bfbfae466f
19 changed files with 641 additions and 199 deletions

View File

@ -38,11 +38,14 @@ Module_Export, "export"
Number, "number"
Operator, "operator"
Preprocess_Define, "#define"
Preprocess_Include, "#include"
Preprocess_If, "#if"
Preprocess_ElIF, "#elif"
Preprocess_IfDef, "#ifdef"
Preprocess_IfNotDef, "#ifndef"
Preprocess_ElIf, "#elif"
Preprocess_Else, "#else"
Preprocess_EndIf, "#endif"
Preprocess_Include, "#include"
Preprocess_Pragma, "#pragma"
Spec_Alignas, "alignas"
Spec_Const, "const"
Spec_Consteval, "consteval"

1 Invalid __invalid__
38 Number number
39 Operator operator
40 Preprocess_Define #define
Preprocess_Include #include
41 Preprocess_If #if
42 Preprocess_ElIF Preprocess_IfDef #elif #ifdef
43 Preprocess_IfNotDef #ifndef
44 Preprocess_ElIf #elif
45 Preprocess_Else #else
46 Preprocess_EndIf #endif
47 Preprocess_Include #include
48 Preprocess_Pragma #pragma
49 Spec_Alignas alignas
50 Spec_Const const
51 Spec_Consteval consteval