On Sep 2, 2011, at 5:13 PM, Lionel Elie Mamane wrote:
- For the question of which symbols for OPropertySetHelper2 to list
in the various map files, see
<http://udk.openoffice.org/common/man/apicppclasses.html> (you
probably need access to builds on the various platforms to find out
the correct mangled names).
It does not say to export the vtable; I assume the vtable "obviously"
has to be exported.
No, need not be exported (if none of the ctors and dtors are inline).
It says:
If the destructor of a class is declared virtual, declare the
destructors of all its base classes virtual. (To have a dedicated
place where RTTI for the base classes is generated, which is
referenced by the RTTI for the derived class. Since in general you
cannot control the ways a class is used, the best advice probably is
to do this for each class that is intended to be subclassed.)
Well, we cannot do that anymore, since that would break ABI on
OPropertySetHelper2. Can we "safely" ignore this instruction here?
Yes.
Revised patch attached; if it is good to go (especially with respect
to questions above), I'll commit (with a better commit message).
gcc3.map in the latest patch (sent this morning):
- Do not export vtable (see above).
- Comment out the RTTI symbols (_ZTI, _ZTS), as they are already implicitly exported in GCC_3_0_0
section via some hackery. ("This implies that any _ZTI and _ZTS symbols covered by the previous
point are always exported with version GCC_3_0_0, which defeats the correct use of versioning for
those symbols.")
- Do not export the thunks (_ZThn), not needed externally.
-Stephan
Context
Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility · Lionel Elie Mamane
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.