diff options
Diffstat (limited to 'sdecls_cgen.c')
-rw-r--r-- | sdecls_cgen.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sdecls_cgen.c b/sdecls_cgen.c index b2f3900..83c978e 100644 --- a/sdecls_cgen.c +++ b/sdecls_cgen.c @@ -37,11 +37,15 @@ static bool cgen_sdecls_type(CGenerator *g, Type *type) { } static bool cgen_sdecls_block(CGenerator *g, Block *b) { + Block *prev_block = g->block; + g->block = b; + arr_foreach(b->stmts, Statement, s) if (!cgen_sdecls_stmt(g, s)) return false; if (b->ret_expr && !cgen_sdecls_expr(g, b->ret_expr)) return false; + g->block = prev_block; return true; } |