diff options
| author | WormHeamer | 2025-08-10 02:46:50 -0400 |
|---|---|---|
| committer | WormHeamer | 2025-08-10 02:46:50 -0400 |
| commit | d4c768a481b923d407201c25d3d750040b6ccd44 (patch) | |
| tree | 16dd697288846b8effd1f18a3e23187654710e02 /ir.h | |
| parent | 1c4efc8009292b6f8d6079f87645e8eb65e85f3e (diff) | |
add type-specifiers to let, N_UNINIT for uninitialized values
Diffstat (limited to 'ir.h')
| -rw-r--r-- | ir.h | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -43,9 +43,10 @@ struct Node; int type_eql(Type *a, Type *b); int type_base_eql(Type *a, Type *b); int value_eql(Value *a, Value *b); -int type_check(struct Node *n); +void type_check(struct Node *n, Lexer *l); Str type_desc(Type *t, Arena *arena); void type_err(struct Node *n, Lexer *l); +void type_expected(Type *want, struct Node *n, Lexer *l); /* nodes */ @@ -61,6 +62,7 @@ void type_err(struct Node *n, Lexer *l); X(RETURN, "return")\ X(KEEPALIVE, "keepalive")\ X(LIT, "literal")\ + X(UNINIT, "uninitialized value")\ X(OP_ADD, "add")\ X(OP_SUB, "sub")\ X(OP_MUL, "mul")\ |
