diff options
author | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-04-04 22:12:17 +0330 |
---|---|---|
committer | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-04-04 22:12:17 +0330 |
commit | 5d43a23a42725d9e88be76ce04260dbd4b57d370 (patch) | |
tree | b70fd8938f1eac3ab424943fb0b246ecba9ae016 /src/compiler/lexer.c | |
parent | 6bfad51dbde77267368811737d4ecbd557eac2e9 (diff) |
add undefined and fix some struct stuff
Diffstat (limited to 'src/compiler/lexer.c')
-rw-r--r-- | src/compiler/lexer.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/compiler/lexer.c b/src/compiler/lexer.c index 618851d..16e8ee5 100644 --- a/src/compiler/lexer.c +++ b/src/compiler/lexer.c @@ -37,6 +37,7 @@ const char *LEXER_TOKEN_STRINGS[] = { "LEXER_TOKEN_KEYWORD_COMPTIME", "LEXER_TOKEN_KEYWORD_NULL", "LEXER_TOKEN_KEYWORD_STRUCT", + "LEXER_TOKEN_KEYWORD_UNDEFINED", "LEXER_TOKEN_NUMBER", @@ -112,10 +113,10 @@ const size_t LEXER_SYMBOL_SIZE = sizeof(LEXER_SYMBOL_TOKENS) / sizeof(*LEXER_SYMBOL_TOKENS); const char *LEXER_KEYWORD_STRINGS[] = { - "type", "void", "i8", "u8", "i16", "u16", "i32", - "u32", "i64", "u64", "f16", "f32", "f64", "f128", - "bool", "print_u64", "return", "true", "false", "if", "else", - "while", "comptime", "null", "struct", + "type", "void", "i8", "u8", "i16", "u16", "i32", + "u32", "i64", "u64", "f16", "f32", "f64", "f128", + "bool", "print_u64", "return", "true", "false", "if", "else", + "while", "comptime", "null", "struct", "undefined", }; const LexerToken LEXER_KEYWORD_TOKENS[] = { LEXER_TOKEN_KEYWORD_TYPE, LEXER_TOKEN_KEYWORD_VOID, @@ -130,7 +131,7 @@ const LexerToken LEXER_KEYWORD_TOKENS[] = { LEXER_TOKEN_KEYWORD_FALSE, LEXER_TOKEN_KEYWORD_IF, LEXER_TOKEN_KEYWORD_ELSE, LEXER_TOKEN_KEYWORD_WHILE, LEXER_TOKEN_KEYWORD_COMPTIME, LEXER_TOKEN_KEYWORD_NULL, - LEXER_TOKEN_KEYWORD_STRUCT, + LEXER_TOKEN_KEYWORD_STRUCT, LEXER_TOKEN_KEYWORD_UNDEFINED, }; const size_t LEXER_KEYWORD_SIZE = sizeof(LEXER_KEYWORD_TOKENS) / sizeof(*LEXER_KEYWORD_TOKENS); @@ -285,6 +286,7 @@ void lexerPushClear(LexerNodeArray *array, size_t *array_size, char *iter, case LEXER_TOKEN_KEYWORD_COMPTIME: case LEXER_TOKEN_KEYWORD_NULL: case LEXER_TOKEN_KEYWORD_STRUCT: + case LEXER_TOKEN_KEYWORD_UNDEFINED: case LEXER_TOKEN_NUMBER: case LEXER_TOKEN_SYMBOL_EOL: case LEXER_TOKEN_SYMBOL_OPEN_PARENTHESIS: |