diff options
Diffstat (limited to 'src/lower.c')
| -rw-r--r-- | src/lower.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lower.c b/src/lower.c index 15db8aa..e2097b0 100644 --- a/src/lower.c +++ b/src/lower.c @@ -1032,7 +1032,7 @@ static int lower_type_def(struct state *state, struct ast *type) if (type_lowered(type)) return 0; - ast_flags(type, AST_FLAG_LOWERED); + ast_set_flags(type, AST_FLAG_LOWERED); char *decl_buf = NULL; size_t decl_len = 0; FILE *decl = open_memstream(&decl_buf, &decl_len); @@ -1062,6 +1062,7 @@ static int lower_type_def(struct state *state, struct ast *type) add_type(state, decl_buf); add_type(state, defn_buf); + return 0; } @@ -1070,6 +1071,8 @@ static int lower_proc(struct state *state, struct ast *proc) if (proc_lowered(state, proc)) return 0; + ast_set_flags(proc, AST_FLAG_LOWERED); + if (!proc_body(proc)) return lower_extern_proc(state, proc); @@ -1154,6 +1157,7 @@ static int lower_proc(struct state *state, struct ast *proc) free(start_of); free(proto); free(name); + return ret; } |
