This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: visibility control for explicit instantiations
- From: Mike Stump <mrs at apple dot com>
- To: Jason Merrill <jason at redhat dot com>
- Cc: "gcc-patches at gcc dot gnu dot org Patches" <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 21 Jul 2006 12:53:54 -0700
- Subject: Re: visibility control for explicit instantiations
- References: <D9AA6166-60F4-403B-AD6E-B1EE68C137E4@apple.com> <CACAD126-4757-44E7-9677-AFEF92281473@apple.com> <44C107BD.2050502@redhat.com>
On Jul 21, 2006, at 9:58 AM, Jason Merrill wrote:
OK, but please document this in invoke.texi.
Hum... So many possibilities... How about the below?
2006-07-21 Mike Stump <mrs@apple.com>
* doc/invoke.texi (C++ Dialect Options): Note that
-fvisibility-inlines-hidden doesn't affect explicitly
instantiationed inline methods.
Doing diffs in doc:
--- doc/invoke.texi.~1~ 2006-07-20 15:43:45.000000000 -0700
+++ doc/invoke.texi 2006-07-21 12:37:38.000000000 -0700
@@ -1616,6 +1616,9 @@ appear in the export table of a DSO and
when used within the DSO@. Enabling this option can have a
dramatic effect
on load and link times of a DSO as it massively reduces the size
of the
dynamic export table when the library makes heavy use of templates.
+Note however that explicitly instantiated inline methods are
+unaffected by this option as their linkage might otherwise cross a
+shared library boundary. @xref{Template Instantiation}.
The behaviour of this switch is not quite the same as marking the
methods as hidden directly, because it does not affect static
variables
--------------