gen-h: register the need for stdbool.h and stdint.h when exploring types recursively

otherwise they wouldn't be included when only a struct contains them
master
Sahnvour 2019-09-21 17:41:25 +02:00
parent 49156e3980
commit 1bde3b6821
1 changed files with 4 additions and 2 deletions

View File

@ -9515,7 +9515,11 @@ static void prepend_c_type_to_decl_list(CodeGen *g, GenH *gen_h, ZigType *type_e
case ZigTypeIdVoid:
case ZigTypeIdUnreachable:
case ZigTypeIdBool:
g->c_want_stdbool = true;
return;
case ZigTypeIdInt:
g->c_want_stdint = true;
return;
case ZigTypeIdFloat:
return;
case ZigTypeIdOpaque:
@ -9596,7 +9600,6 @@ static void get_c_type(CodeGen *g, GenH *gen_h, ZigType *type_entry, Buf *out_bu
break;
case ZigTypeIdBool:
buf_init_from_str(out_buf, "bool");
g->c_want_stdbool = true;
break;
case ZigTypeIdUnreachable:
buf_init_from_str(out_buf, "__attribute__((__noreturn__)) void");
@ -9620,7 +9623,6 @@ static void get_c_type(CodeGen *g, GenH *gen_h, ZigType *type_entry, Buf *out_bu
}
break;
case ZigTypeIdInt:
g->c_want_stdint = true;
buf_resize(out_buf, 0);
buf_appendf(out_buf, "%sint%" PRIu32 "_t",
type_entry->data.integral.is_signed ? "" : "u",