http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51910
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-01-20 03:47:05 UTC --- > From your comment, I take it there is some way to enable something like COMDAT folding to remove the duplicated function instantiations? That is the point of COMDAT so that duplicated function instantiations are not done. > Removing -frepo seems to bloat my executable. Have you tried using -Wl,--gc-sections ?