summaryrefslogtreecommitdiff
path: root/cgen.c
diff options
context:
space:
mode:
Diffstat (limited to 'cgen.c')
-rw-r--r--cgen.c18
1 files changed, 2 insertions, 16 deletions
diff --git a/cgen.c b/cgen.c
index 64b3fe8..169db09 100644
--- a/cgen.c
+++ b/cgen.c
@@ -318,22 +318,6 @@ static bool cgen_type_pre(CGenerator *g, Type *t, Location where) {
} else if (t->struc->c.id) {
cgen_ident_id(g, t->struc->c.id);
} else {
- #if 0
- /* TODO: DELME */
- cgen_write(g, "struct {");
- g->indent_lvl++;
- cgen_nl(g);
- arr_foreach(t->struc.fields, Field, f) {
- if (!cgen_type_pre(g, f->type, where)) return false;
- cgen_write(g, " ");
- cgen_ident(g, f->name);
- if (!cgen_type_post(g, f->type, where)) return false;
- cgen_write(g, ";");
- cgen_nl(g);
- }
- g->indent_lvl--;
- cgen_write(g, "}");
- #endif
assert(0);
}
break;
@@ -1944,6 +1928,8 @@ static bool cgen_defs_block(CGenerator *g, Block *b) {
if (!cgen_defs_stmt(g, s))
return false;
}
+ if (b->ret_expr && !cgen_defs_expr(g, b->ret_expr))
+ return false;
return true;
}