https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93786
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice-on-valid-code Priority|P3 |P2 CC| |rguenth at gcc dot gnu.org --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- Hmm, but this destructive modification of something we don't unshare doesn't work. Either we have to always wrap statement lists but then we're back to the compare-debug issue or we somehow fix the destructiveness on the stmt list node itself - like not setting it's type to void or marking it as having side-effects (why do we do this anyways, in voidify_wrapper_expr? is that for debugging?), we'd also need to leave the final value in the stmt list for a possible second gimplification round... Maybe the best thing is to kill off the debug stmts when they would cause a stmt list to appear and revert the previous fix.