https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80701
--- Comment #7 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- While the statements after a RETURN are still there in the dump file *.007t.eh, they are removed at *.008t.cfg ... Removing basic block 3 ;; basic block 3, loop depth 0 ;; pred: undefined (); ... So I am convinced that this PR should be marked as a duplicate of pr46476. If for "good" reason (I don't understand) you want a special warning for procedure removal, I think this should be asked in pr46476.