diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2019-10-08 14:32:22 -0400 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2019-10-08 14:32:22 -0400 |
commit | 6075f33768b3a160fa1a06e54253f9cd565241ec (patch) | |
tree | 9b399a7e2686f8eaa61d36d9782f030be1f045b5 /types.c | |
parent | 9c4be69bbd707e96eec176cad4188dcba265eb4c (diff) |
eval fn calling (eval is done./runv)
Diffstat (limited to 'types.c')
-rw-r--r-- | types.c | 10 |
1 files changed, 2 insertions, 8 deletions
@@ -423,16 +423,10 @@ static bool types_expr(Typer *tr, Expression *e) { tr->ret_type = t->fn.types[0]; } tr->can_ret = true; - arr_foreach(f->params, Declaration, decl) - add_ident_decls(&f->body, decl); - arr_foreach(f->ret_decls, Declaration, decl) - add_ident_decls(&f->body, decl); + fn_enter(f); bool block_success = true; block_success = types_block(tr, &e->fn.body); - arr_foreach(f->params, Declaration, decl) - remove_ident_decls(&f->body, decl); - arr_foreach(f->ret_decls, Declaration, decl) - remove_ident_decls(&f->body, decl); + fn_exit(f); if (!block_success) { success = false; goto fn_ret; |