Hi, On Thu, 9 Nov 2017, Bin.Cheng wrote:
> So I have two questions here. > A) Is this special kind union type only generated by fortran FE for > equivalence+common? It's not special in that it isn't marked in any way. For all purposes it's a normal union type with surprising field(offset)s. I don't know if it can occur for any situations except equivalence+common. Not from the fortran frontend I believe. > B) For the special union type that has non-zero offset fields. Is it > safe to assume field A is not the last flex array: if there is field B > that offset_B >= (offset_A + length_A)? No. You can make equivalences between all kinds of objects, including non-arrays. You can also equivalence (say) an integer variable and an individual array element. Also flex arrays don't enter the picture, you can equivalize (tm) also arrays of fixed size. Ciao, Michael.