The following patch doesn't pass bootstrap & regtest. It did at some point though and its comment hints that fixing leaks after inlining was too interesting a problem to solve ;)
Thus patch is FYI. Richard. Index: tree-ssa.c =================================================================== --- tree-ssa.c (revision 228320) +++ tree-ssa.c (working copy) @@ -693,6 +693,16 @@ verify_def (basic_block bb, basic_block goto err; } + if (bb == NULL + /* ??? Too many latent cases in the main opt pipeline. But it's + worth to fix all cases before inlining as that reduces the + amount of garbage kept live. */ + && !cfun->after_inlining) + { + error ("removed STMT failed to release SSA name"); + goto err; + } + if (definition_block[SSA_NAME_VERSION (ssa_name)]) { error ("SSA_NAME created in two different blocks %i and %i",