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.