[Bug c/99826] GIMPLE FE fails to grok pointer declarators
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99826 Andrew Pinski changed: What|Removed |Added Last reconfirmed||2024-03-08 Ever confirmed|0 |1 Keywords||rejects-valid Status|UNCONFIRMED |NEW --- Comment #2 from Andrew Pinski --- The first issue of the placement __GIMPLE(ssa) is still there. The second issue of _2 was fixed in GCC 12. Confirmed.
[Bug c/99826] GIMPLE FE fails to grok pointer declarators
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99826 --- Comment #1 from Richard Biener --- __GIMPLE(ssa) char * foo(char *p) {..} works for the first issue. I failed to make the "late" __GIMPLE spec work in a straight-forward manner. I guess we might want to change the default dumping to prefer the above order. The 2nd issue remains and can be seen as char * foo (char * p) { char * _2; : _2_2 = p_1(D); return _2_2; } fixing it in a generic way will likely require exposing more of grokdeclarator and eventually generating the SSA name there directly. Limited support is possible of course and the workaround is to declare a decl: char * q; __BB(2): q_2 = p_1(D); return q_2; which will work at the expense of creating a decl.