https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114574
--- Comment #22 from Jakub Jelinek <jakub at gcc dot gnu.org> --- BTW, wonder if it wouldn't be desirable to revert the PR114361 patch until this is sorted out, or at least limit the effects of that patch to flag_isoc23 and using multiple types with the same tag and same content. Like guard TYPE_CANONICAL (x) = TYPE_CANONICAL (t); with if (flag_isoc23 && TYPE_CANONICAL (t) != t) Because otherwise the trunk is just completely broken for all of LTO with C of any version.