From 938773d9cc062fd028f6560b1127a2ecd23f61c3 Mon Sep 17 00:00:00 2001 From: Zuhaitz Méndez Fernández de Aránguiz Date: Tue, 27 Jan 2026 01:22:42 +0000 Subject: Fixed constant hex/oct bug + Fixed some of the examples (work in progress) + added bootloader example (I will add some docs) --- src/parser/parser_decl.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/parser/parser_decl.c') diff --git a/src/parser/parser_decl.c b/src/parser/parser_decl.c index ab1516e..98f46e1 100644 --- a/src/parser/parser_decl.c +++ b/src/parser/parser_decl.c @@ -586,6 +586,9 @@ ASTNode *parse_var_decl(ParserContext *ctx, Lexer *l) type_obj->arg_count = init->type_info->arg_count; type_obj->is_varargs = init->type_info->is_varargs; } + type_obj->array_size = init->type_info->array_size; + type_obj->is_raw = init->type_info->is_raw; + type_obj->is_explicit_struct = init->type_info->is_explicit_struct; type = type_to_string(type_obj); } else if (init->type == NODE_EXPR_SLICE) @@ -775,7 +778,7 @@ ASTNode *parse_def(ParserContext *ctx, Lexer *l) if (lexer_peek(l).type == TOK_INT) { Token val_tok = lexer_peek(l); - int val = atoi(token_strdup(val_tok)); // quick check + int val = (int)strtol(token_strdup(val_tok), NULL, 0); // support hex/octal ZenSymbol *s = find_symbol_entry(ctx, ns); if (s) -- cgit v1.2.3