This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/51910] [4.7 Regression] -frepo linking failure
- From: "nephatrine at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 20 Jan 2012 03:44:05 +0000
- Subject: [Bug c++/51910] [4.7 Regression] -frepo linking failure
- Auto-submitted: auto-generated
- References: <bug-51910-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51910
--- Comment #2 from Daniel Wolf <nephatrine at gmail dot com> 2012-01-20 03:44:05 UTC ---
(In reply to comment #1)
> Is there a reason why you are using -frepo ? It is not as useful as it was
> before elf had comdat.
Removing -frepo seems to bloat my executable. The GCC documentation
(http://gcc.gnu.org/onlinedocs/gcc/Template-Instantiation.html) seemed to
portray -frepo as being useful given that the alternatives I'd face are either
unnecessarily larger executables or reworking a large header-only template
library written in the "Borland model." I suppose explicit instantiation with
no implicit instantiation is also an option, but seems needlessly tedious and
error-prone to maintain particularly when you have many developers working on a
project.
>From your comment, I take it there is some way to enable something like COMDAT
folding to remove the duplicated function instantiations? If so, what flag(s)
would I need to add to the project to enable this?
Either way, I'd think the issue should probably be looked at. If -frepo is
considered deprecated or just too complicated or unimportant to fix, it should
probably just be removed altogether.