https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114353
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hubicka at gcc dot gnu.org Last reconfirmed| |2024-03-15 Keywords| |ice-on-invalid-code Ever confirmed|0 |1 Status|UNCONFIRMED |NEW --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Yeah, LTO objects are not "portable" and since they are more-or-less unstructured mismatches produce this kind of "errors" (and there's no way to know for the compiler). Not exactly great engineering but this is how it is "expected" to not work. Much stricter "versioning" would be necessary to prevent this (maybe similar to the checksum we use for PCH validation). I wonder what the C++ module support does, it should face the very same issue.