Fixed: union initialization did not work properly

This commit is contained in:
ceriel 1994-10-03 12:57:39 +00:00
parent c3ad2ccc5e
commit d1e4c3d930

View file

@ -220,6 +220,12 @@ gen_tphead(tpp, nest)
} }
if (gen_error) return tpp; if (gen_error) return tpp;
if (tp->tp_fund == UNION) { if (tp->tp_fund == UNION) {
sd = tp->tp_sdef;
if (AHEAD == '{' &&
(aggregate_type(sd->sd_type) ||
sd->sd_type->tp_fund == UNION)) {
return &(sd->sd_type);
}
return gen_tphead(&(tp->tp_sdef->sd_type), nest); return gen_tphead(&(tp->tp_sdef->sd_type), nest);
} }
p = new_e_stack(); p = new_e_stack();