diff options
| author | Zuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian> | 2026-01-23 17:29:30 +0000 |
|---|---|---|
| committer | Zuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian> | 2026-01-23 17:29:30 +0000 |
| commit | d7b24c552305f1bd8c49e253d14dcf4b1581df2c (patch) | |
| tree | 1f5ae2aa05af21120525b180d07b2657078678da /src/parser/parser.h | |
| parent | c735d4b45f2db336e2aff8d94da7a08bb1fad68f (diff) | |
Fix for #94
Diffstat (limited to 'src/parser/parser.h')
| -rw-r--r-- | src/parser/parser.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/parser/parser.h b/src/parser/parser.h index 6f62435..6ac55bf 100644 --- a/src/parser/parser.h +++ b/src/parser/parser.h @@ -268,8 +268,23 @@ struct ParserContext int is_repl; // REPL mode flag int has_async; // Track if async features are used int in_defer_block; // Track if currently parsing inside a defer block + + // Type Validation + struct TypeUsage *pending_type_validations; + int is_speculative; // Flag to suppress side effects during speculative parsing }; +typedef struct TypeUsage +{ + char *name; + Token location; + struct TypeUsage *next; +} TypeUsage; + +// Type validation prototypes +void register_type_usage(ParserContext *ctx, const char *name, Token t); +int validate_types(ParserContext *ctx); + // Token helpers char *token_strdup(Token t); int is_token(Token t, const char *s); |
