This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug lto/53282] lto and visibility-inlines-hidden makes "wrongly" hidden symbols and in a way that depends on the order of the input compilation units
- From: "vincenzo.innocente at cern dot ch" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 09 May 2012 09:39:54 +0000
- Subject: [Bug lto/53282] lto and visibility-inlines-hidden makes "wrongly" hidden symbols and in a way that depends on the order of the input compilation units
- Auto-submitted: auto-generated
- References: <bug-53282-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53282
--- Comment #6 from vincenzo Innocente <vincenzo.innocente at cern dot ch> 2012-05-09 09:39:54 UTC ---
On 9 May, 2012, at 11:10 AM, rguenth at gcc dot gnu.org wrote:
> All hidden symbols are postfixed with something like .local.77.4195, making
> them no longer the symbols for the explicitely instantiated functions.
>
> I suppose you say that the bug is that you have explicitely instantiated
> some templates which you want to have appear in the library as exported
> but LTO makes all instances hidden so that no externally visible symbol
> for that explicitely instantiated template remains?
correct.
The additional point is that this happens only for some symbols, not all, even
if the definitions/declarations are identical.