summaryrefslogtreecommitdiff
path: root/src/parser/parser.h
diff options
context:
space:
mode:
authorZuhaitz <zuhaitz.zechhub@gmail.com>2026-01-13 14:50:43 +0000
committerGitHub <noreply@github.com>2026-01-13 14:50:43 +0000
commit7eb91d69beb19da7a7cb7ac84625f701890ce6eb (patch)
tree4b86f4ad20a66b0e984feb4d5a2abaf6eaa1227f /src/parser/parser.h
parent8fc9c88304fde65d6c3a619c3aee7e6e00540695 (diff)
parent856267f36e60211ba537d63a80c5d36aa4436a4f (diff)
Merge branch 'main' into pr-34-testing
Diffstat (limited to 'src/parser/parser.h')
-rw-r--r--src/parser/parser.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/parser/parser.h b/src/parser/parser.h
index 4aeb2c8..9cdd0d2 100644
--- a/src/parser/parser.h
+++ b/src/parser/parser.h
@@ -265,6 +265,7 @@ struct ParserContext
FILE *hoist_out; // For plugins to hoist code to file scope
int skip_preamble; // If 1, codegen_node(NODE_ROOT) won't emit preamble
int is_repl; // REPL mode flag
+ int has_async; // Track if async features are used
};
// Token helpers
@@ -376,7 +377,7 @@ void init_builtins();
// Expression rewriting
char *rewrite_expr_methods(ParserContext *ctx, char *raw);
-char *process_fstring(ParserContext *ctx, const char *content);
+char *process_fstring(ParserContext *ctx, const char *content, char ***used_syms, int *count);
char *instantiate_function_template(ParserContext *ctx, const char *name,
const char *concrete_type);
FuncSig *find_func(ParserContext *ctx, const char *name);
@@ -408,8 +409,8 @@ ASTNode *parse_guard(ParserContext *ctx, Lexer *l);
ASTNode *parse_match(ParserContext *ctx, Lexer *l);
ASTNode *parse_return(ParserContext *ctx, Lexer *l);
-char *process_printf_sugar(ParserContext *ctx, const char *content, int newline,
- const char *target);
+char *process_printf_sugar(ParserContext *ctx, const char *content, int newline, const char *target,
+ char ***used_syms, int *count);
ASTNode *parse_assert(ParserContext *ctx, Lexer *l);
ASTNode *parse_defer(ParserContext *ctx, Lexer *l);
ASTNode *parse_asm(ParserContext *ctx, Lexer *l);