https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116726
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|compiler segfault when |[14/15 Regression] compiler |using certain struct |segfault when using certain |redefinitions |struct redefinitions Ever confirmed|0 |1 Status|UNCONFIRMED |NEW Last reconfirmed| |2024-09-15 Keywords| |ice-on-valid-code Target Milestone|--- |14.3 CC| |muecker at gwdg dot de --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Confirmed. Reduced slightly: ``` struct s1 { int f1; }; struct s2 { int f2; }; struct s1 f(struct s2 *); struct s1 { int f1; }; struct s2 { int f2; }; struct s1 f(struct s2 *); ``` I think this is valid due to change in C23 tag compability. https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3003.pdf . Clang does not implement the C23 tag compatibility rules yet.