ctfmerge confuses unresolved types with members that have zero size
The first two hunks deal with issues around zero-length arrays.
tdesc_size() returns 0 for types that haven't been resolved yet, but
of course it'll return 0 for zero-length arrays, and for structs/unions
that consist of zero-length arrays. In those cases I've strengthened the
checks to also verify that (t_flags & TDESC_F_RESOLVED) == 0.