[Libreoffice] map files: how to update? [was: cppu::OPropertySetHelper ABI backwards compatibility]
Stephan Bergmann
stephan.bergmann.secondary at googlemail.com
Mon Sep 5 00:57:30 PDT 2011
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
More information about the LibreOffice
mailing list