libcmis patch (was: [Libreoffice-commits] .: Enable -Wnon-virtual-dtor for GCC 4.6)

Stephan Bergmann sbergman at redhat.com
Wed Mar 14 06:50:35 PDT 2012


On 03/14/2012 01:32 PM, Stephan Bergmann wrote:
> commit 6e67c03dc0225fc66343546b14e902b9d238b1a3
> Author: Stephan Bergmann<sbergman at redhat.com>
> Date:   Wed Mar 14 13:27:56 2012 +0100
>
>      Enable -Wnon-virtual-dtor for GCC 4.6
>
>      ...which has the necessary features to support it.
>
>      Change a lot of classes to either contain a protected non-virtual dtor
>      (which is backwards compatible, so even works for cppumaker-generated
>      UNO headers) or a public virtual one.
>
>      cppuhelper/propertysetmixin.hxx still needs to disable the warning, as
>      the relevant class has a non-virtual dtor but friends, which would still
>      cause GCC to warn.
>
>      Includes a patch for libcmis, intended to be upstreamed.
>
[...]
> diff --git a/libcmis/libcmis-0.1.0-non-virtual-dtor.patch b/libcmis/libcmis-0.1.0-non-virtual-dtor.patch
> new file mode 100644
> index 0000000..764c7b2
> --- /dev/null
> +++ b/libcmis/libcmis-0.1.0-non-virtual-dtor.patch
> @@ -0,0 +1,11 @@
> +--- misc/libcmis-0.1.0/src/libcmis/cmis-object.hxx	2011-09-30 20:35:37.000000000 +0200
> ++++ misc/build/libcmis-0.1.0/src/libcmis/cmis-object.hxx	2012-03-13 21:46:03.985188599 +0100
> +@@ -39,6 +39,8 @@
> +     class CmisObject
> +     {
> +         public:
> ++            virtual ~CmisObject() {}
> ++
> +             virtual std::string getId( ) = 0;
> +             virtual std::string getName( ) = 0;
> +

Cedric, can you upstream this?  (Or even make the dtor non-inline, to 
reduce the amount of symbols with vague linkage -- but I did not find a 
fitting .cxx to put it into.)

Thanks,
Stephan


More information about the LibreOffice mailing list