[Bug c++/94960] extern template prevents inlining of standard library objects

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed May 6 07:05:03 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94960

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu.org,
                   |                            |jason at gcc dot gnu.org
          Component|libstdc++                   |c++

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
I guess the C++ FE could honor -finline-functions and consider all functions
having the 'inline' hint in that case.  I'm not sure how wide-spread
explicit instantiations are and what compile-time (and size?) hit we get
when doing the instantiations always.

That is, is the middle-end smart enough to not emit out-of-line instances
for the inline instantiated extern template parts?  Off the top of my head
I'm not aware of any middle-end flagging of this?


More information about the Gcc-bugs mailing list