https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63572
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- For debugging most important is to get (gdb) b foo still work when foo was merged with bar and the program now calls bar Similarly nice (but probably impossible) is (gdb) b foo.c:23 with foo.c:23 inside foo. Of course foo and bar, even if considered equal by ICF, are by no means equivalent lexically. So foo.c:23 could at most break at the start of bar. (or give a useful diagnostic from gdb)