Hi Jakub, On 1/23/23 17:37, Jakub Jelinek wrote: > Please see transparent_union documentation in GCC documentation. > E.g. https://gcc.gnu.org/onlinedocs/gcc-12.2.0/gcc/Common-Type-Attributes.html#index-transparent_005funion-type-attribute > transparent_union doesn't change anything regarding type punning, it is > solely about function arguments, how arguments of that type are passed > (as first union member) and that no casts to the union are needed from > the member types. Yep, when I wrote that I didn't fully understand it. Now I got it. I'll prepare some better suggestion about a fix. Thanks. > And, with LTO TU boundaries are lost, inlining or other IPA optimizations > (including say modref) work in between TUs. Yeah, that's why we need a fix. Compilers will only get better at optimizing, so UB will sooner or later be a problem. Cheers, Alex --