diff options
| author | Carson Fleming <cflems@cflems.net> | 2026-03-27 10:30:10 -1000 |
|---|---|---|
| committer | Carson Fleming <cflems@cflems.net> | 2026-03-27 10:30:10 -1000 |
| commit | fca3bf239cfdf03c4479f5d0c14a21c1fd96ea3e (patch) | |
| tree | 0618ad64a13e949ce9273098df724d8d25bdcb36 /ast.c | |
| parent | 21f688c1eac5fb09ae68fd9b3cfcff687de36601 (diff) | |
| download | ccc-fca3bf239cfdf03c4479f5d0c14a21c1fd96ea3e.tar.gz | |
woah we got variables
Diffstat (limited to 'ast.c')
| -rw-r--r-- | ast.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -5,7 +5,7 @@ static void expr_destroy(struct expr_node* node); static void stmt_destroy(struct stmt_node* node); static void type_destroy(struct type_node* node) { - free(node->type); + free(node->name); } static void var_decl_destroy(struct var_decl_node* node) { @@ -14,6 +14,10 @@ static void var_decl_destroy(struct var_decl_node* node) { free(node->ident); } +static void var_ref_destroy(struct var_ref_node* node) { + free(node->ident); +} + static void group_destroy(struct group_node* node) { struct stmt_node* body_node = node->body_head; while (body_node != NULL) { @@ -52,6 +56,9 @@ static void expr_destroy(struct expr_node* node) { case EXPR_EMPTY: case EXPR_INT_LIT: break; + case EXPR_VAR_REF: + var_ref_destroy(&node->as._var_ref); + break; } } |
