Support struct and union types