sbergman at redhat.com
Tue Mar 13 06:24:52 PDT 2012
On 03/13/2012 11:43 AM, Tor Lillqvist wrote:
> Hmm, now that the reason for using -Wno-non-virtual-dtor has been
> documented (760e0d2d7329ca6fc00a8439715bae38becb168a ), I wonder,
> should we globally then also turn off the corresponding MSVC warning?
> That would be kinda predictable (from a "the usual waste of time"
> point of view), as I and others have committed over times dozens of
> WaE fixes for this very issue... (I.e. added a virtual no-op
> destructor in most cases).
> Or does gcc and MSVC warn for different cases of lack of virtual
> destructor? Is it certain that in all cases this warning is bogus, in
> both the gcc and MSVC cases?
I think the warning is generally non-bogus. The problem is that we were
not able to change the cppumaker-generated C++ headers without breaking
backwards compatiblity, and GCC was somewhat over-ambitious with this
warning, so had to disable it -- even if we would have preferred to
keep it on.
 There might be a way around that after all, adding a non-virtual,
protected destructor to the C++ classes representing UNO interfaces.
Will look into that.
"-Wnon-virtual-dtor should't complain of protected dtor" apparently
solves the problem for cppuhelper/propertysetmixin.hxx that originally
caused problems. Seems to be available at least in the Fedora-16 GCC
4.6.2. (And -Wall appears to no longer automatically enable
-Wnon-virtual-dtor.) Maybe all this allows us to re-enable
-Wnon-virtual-dtor after all; will look into that.
More information about the LibreOffice