https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92088
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-valid-code
Status|UNCONFIRMED |NEW
Last reconfirmed| |2019-11-06
CC| |ebotcazou at gcc dot gnu.org,
| |jsm28 at gcc dot gnu.org
Component|middle-end |c
Ever confirmed|0 |1
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
So I believe this is a frontend issue. I pondered a bit to see where I could
stick DECL_UNINLINABLE to nested fndecls with VLA by-value arguments but
didn't find a convenient place. Joseph? This should avoid most of the ICEs
we see here.
I also think the C frontend should use DECL_BY_REFERENCE here but I see it
not using that anywhere and have no idea where to make such params this
way. Alternatively passing VLAs by value could be disallowed.
I don't think the inliner should work around this - this hasn't been necessary
for Ada which is a good sign here. Eric - how does GiGi handle this case?
That said - Joseph, can you stick DECL_UNINLINABLE somewhere suitable as
a workaround? Thanks.