https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118796
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #60875|0 |1 is obsolete| | --- Comment #15 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Created attachment 60880 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=60880&action=edit Slightly more reduced testcase It looks like the front-end is getting confused at the 2 z functions; even though they are in different modules, the front-end seems to have copied the body of the first one into the second but since the second one uses the result option which sets up the return value to be named field rather than the function name things go down hill.