diff options
author | Tucker Evans <tuckerevans24@gmail.com> | 2019-08-05 21:31:48 -0400 |
---|---|---|
committer | Tucker Evans <tuckerevans24@gmail.com> | 2019-08-16 19:10:49 -0400 |
commit | 7e29eae526f7a5014934b92a239923dd30835afd (patch) | |
tree | 92eb5137963d27b70c7ea82356434110154b2ab0 /pc.y | |
parent | ee6c598892518d956388bb008095de6d4d7fe123 (diff) |
WIP Add function and array info to node struct
Diffstat (limited to 'pc.y')
-rw-r--r-- | pc.y | 12 |
1 files changed, 11 insertions, 1 deletions
@@ -167,8 +167,18 @@ sub_prog_declaration sub_prog_head :FUNC ID arguments ':' standard_type ';' { + node *tmp; + int i = -1; + check_id(cur_scope->prev, $2); - scope_insert(cur_scope->prev, $2); + tmp = scope_insert(cur_scope->prev, $2); + + assert(tmp->func_info = malloc(sizeof struct fi)); + /*TODO add count of parameters*/ + tmp->func_info->argc = i; + assert(tmp->func_info->argv = malloc(i * sizeof int)); + + tmp->var_type = $5 cur_scope->ret_var = scope_insert(cur_scope, $2); cur_scope->ret_var->var_type = $5; |