[C++-sig] Re: Loading Boost.Python made bindings is horribly slow?
Niall Douglas
s_sourceforge at nedprod.com
Sat Apr 3 20:30:04 CEST 2004
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 3 Apr 2004 at 9:35, David Abrahams wrote:
> I'm looking forward to that! Something to watch out for if you do
> this: if
>
> __attribute__ ((visibility("default")))
>
> applies to classes, you'll have to decide how to handle member
> functions that are declared inline. If you don't handle it the same
> way as Win32 compilers do, you could introduce subtle client
> portability problems. Of course, if it doesn't apply to classes, your
> feature won't be nearly so useful ;-)
No, it will apply to classes. The patch at
http://gcc.gnu.org/bugzilla/show_bug.cgi?id83 by someone expert at
modifying the GCC internals points me the right way. It'll also use
identical syntax to MSVC, despite the misgivings of the GCC crew.
I was going to always mark inline functions as hidden. Also all
templates. This creates code bloat but gives far faster loading &
linking times plus less coupling problems between modules. It also
follows MSVC.
As my previous post pointed out, RTTI is going to be a headache - if
you remember Dave some months ago you agreed that some form of being
able to filter out the RTTI would be useful in reducing binary size -
I figure that if most of the RTTI is not public, it lets the compiler
+ linker know it can be elided (whether the GNU tools can already do
this is unknown).
Debugging this 130Mb shared object is a royal PITA. I'm getting
tempted to delay release of v0.75 until GCC is patched, but then no
one else could make my library without my patch :(
Cheers,
Niall
-----BEGIN PGP SIGNATURE-----
Version: idw's PGP-Frontend 4.9.6.1 / 9-2003 + PGP 8.0.2
iQA/AwUBQG8CrMEcvDLFGKbPEQInWACeNBlO+ea6PQefSkC8Vi/AKmQLVV8An0pQ
CP7e8gXgtrYj1WpjoXKf8ZIg
=JqJK
-----END PGP SIGNATURE-----
More information about the Cplusplus-sig
mailing list