summaryrefslogtreecommitdiff
path: root/extensions
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2022-11-23 13:11:35 +0100
committerStephan Bergmann <sbergman@redhat.com>2022-11-24 10:38:28 +0100
commit4521cb0c409036036f1340e3ffc4e8f113091ecc (patch)
tree23575753c454a46f4b54bd99803364c5b371e7f4 /extensions
parent6571ab41ec5ce496f151bc4c5eaa8c4a52087e7f (diff)
Drop redundant -Wnon-virtual-dtor
Inspired by <https://gcc.gnu.org/pipermail/gcc-patches/2022-November/607102.html> "[PATCH] doc: -Wdelete-non-virtual-dtor supersedes -Wnon-virtual-dtor", drop explicitly enabling -Wnon-virtual-dtor in favor of -Wdelete-non-virtual-dtor, which is already enabled by -Wall. (-Wdelete-non-virtual-dtor first appeared in Clang 3.0, <https://github.com/llvm/llvm-project/commit/8bd428574c717e68a8274739d2ba0f6dc16fd0fb> "Add new warning that warns when invoking 'delete' on a polymorphic, non-final, class without a virtual destructor", and GCC 4.7, <https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=014ab419efc12a59efebd2720d79e1c055675c85> "invoke.texi: Document -Wdelete-non-virtual-dtor. [...]") Dropping the explicit setting of -Wnon-virtual-dtor (and nowhere setting it implicitly via -Weffc++) means we can get rid of lots of places that either set -Wno-non-virtual-dtor or use some pragma to ignore -Wnon-virtual-dtor. (In various places across extensions/source/activex/ and winaccessibility/, the commits f26996bd3398afa789a5491968244563ccf70908 "Silence -Werror,-Wnon-virtual-dtor in generated so_activex.h (clang-cl)" and c6086ca6535692496fbd718d174d8eb5a5dea7c7 "Silence -Werror,-Wnon-virtual-dtor in generated UAccCOM.h (clang-cl)" had singled out some includes to wrap them in pragmas. Now that those pragmas are gone again, move those includes back to where they had been prior to being singled out. And the -Wno-non-virtual-dtor in external/firebird/macos-arm64.patch.0 appeared first in ccd0e5f445d4a7d0e7aca6c23c02c61bf14510b2 "Make firebird build for macOS on arm64", which, though it doesn't state it explicitly, apparently created that patch's builds/posix/prefix.darwin_arm64 as a copy of firebird's already existing builds/posix/prefix.* files, which routinely include that warning option too, so keep it there too even if it is probably irrelevant throughout.) Change-Id: I7e4fa9f2c07e267b2ed15607905027f6b78142f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143182 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'extensions')
-rw-r--r--extensions/source/activex/SOActionsApproval.cxx10
-rw-r--r--extensions/source/activex/SOActionsApproval.h7
-rw-r--r--extensions/source/activex/SOActiveX.cxx10
-rw-r--r--extensions/source/activex/SOActiveX.h7
-rw-r--r--extensions/source/activex/SOComWindowPeer.cxx10
-rw-r--r--extensions/source/activex/SOComWindowPeer.h7
-rw-r--r--extensions/source/activex/SODispatchInterceptor.cxx10
-rw-r--r--extensions/source/activex/StdAfx2.h1
-rw-r--r--extensions/source/activex/so_activex.cxx8
-rw-r--r--extensions/source/ole/oledll.cxx1
-rw-r--r--extensions/source/ole/unoobjw.cxx1
-rw-r--r--extensions/source/ole/wincrap.hxx1
-rw-r--r--extensions/source/ole/windata.hxx1
13 files changed, 4 insertions, 70 deletions
diff --git a/extensions/source/activex/SOActionsApproval.cxx b/extensions/source/activex/SOActionsApproval.cxx
index 3ea4ac8dcf33..833e220ae183 100644
--- a/extensions/source/activex/SOActionsApproval.cxx
+++ b/extensions/source/activex/SOActionsApproval.cxx
@@ -25,18 +25,10 @@
#include "StdAfx2.h"
+#include <so_activex.h>
#include "SOActionsApproval.h"
#include <sal/macros.h>
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
-#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
-
COM_DECLSPEC_NOTHROW STDMETHODIMP SOActionsApproval::InterfaceSupportsErrorInfo(REFIID riid)
{
static const IID* arr[] = {
diff --git a/extensions/source/activex/SOActionsApproval.h b/extensions/source/activex/SOActionsApproval.h
index 2484e74620dd..9b8f4c1e992e 100644
--- a/extensions/source/activex/SOActionsApproval.h
+++ b/extensions/source/activex/SOActionsApproval.h
@@ -32,14 +32,7 @@
#include <atlctl.h>
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
// SOActionsApproval
diff --git a/extensions/source/activex/SOActiveX.cxx b/extensions/source/activex/SOActiveX.cxx
index 88b3ad7691ca..b72ab0d66ca0 100644
--- a/extensions/source/activex/SOActiveX.cxx
+++ b/extensions/source/activex/SOActiveX.cxx
@@ -20,21 +20,13 @@
// SOActiveX.cpp : Implementation of CSOActiveX
#include "StdAfx2.h"
+#include <so_activex.h>
#include "SOActiveX.h"
#include "SOComWindowPeer.h"
#include "SODispatchInterceptor.h"
#include "SOActionsApproval.h"
#include "com_uno_helper.h"
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
-#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
-
#define STAROFFICE_WINDOWCLASS L"SOParentWindow"
diff --git a/extensions/source/activex/SOActiveX.h b/extensions/source/activex/SOActiveX.h
index 37d983ae91d5..49f33d796047 100644
--- a/extensions/source/activex/SOActiveX.h
+++ b/extensions/source/activex/SOActiveX.h
@@ -29,14 +29,7 @@
#include <atlctl.h>
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
class SODispatchInterceptor;
diff --git a/extensions/source/activex/SOComWindowPeer.cxx b/extensions/source/activex/SOComWindowPeer.cxx
index dbd2bcc3e662..6973bc173984 100644
--- a/extensions/source/activex/SOComWindowPeer.cxx
+++ b/extensions/source/activex/SOComWindowPeer.cxx
@@ -24,18 +24,10 @@
#include <cstddef>
#include "StdAfx2.h"
+#include <so_activex.h>
#include "SOComWindowPeer.h"
#include <sal/macros.h>
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
-#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
-
COM_DECLSPEC_NOTHROW STDMETHODIMP SOComWindowPeer::InterfaceSupportsErrorInfo(REFIID riid)
{
static const IID* arr[] = {
diff --git a/extensions/source/activex/SOComWindowPeer.h b/extensions/source/activex/SOComWindowPeer.h
index 379ca767a66a..58136e813637 100644
--- a/extensions/source/activex/SOComWindowPeer.h
+++ b/extensions/source/activex/SOComWindowPeer.h
@@ -32,14 +32,7 @@
#include <atlctl.h>
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
// SOComWindowPeer
diff --git a/extensions/source/activex/SODispatchInterceptor.cxx b/extensions/source/activex/SODispatchInterceptor.cxx
index 14c42a774393..af3d69e02ea9 100644
--- a/extensions/source/activex/SODispatchInterceptor.cxx
+++ b/extensions/source/activex/SODispatchInterceptor.cxx
@@ -25,20 +25,12 @@
#include <stdio.h>
#include "StdAfx2.h"
+#include <so_activex.h>
#include "SOActiveX.h"
#include "SODispatchInterceptor.h"
#include "com_uno_helper.h"
#include <sal/macros.h>
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
-#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
-
COM_DECLSPEC_NOTHROW STDMETHODIMP SODispatchInterceptor::InterfaceSupportsErrorInfo(REFIID riid)
{
static const IID* arr[] =
diff --git a/extensions/source/activex/StdAfx2.h b/extensions/source/activex/StdAfx2.h
index 56bd75b8ac32..ed889271aed8 100644
--- a/extensions/source/activex/StdAfx2.h
+++ b/extensions/source/activex/StdAfx2.h
@@ -41,7 +41,6 @@
#pragma clang diagnostic ignored "-Wmicrosoft"
#pragma clang diagnostic ignored "-Wmissing-field-initializers"
#pragma clang diagnostic ignored "-Wnon-pod-varargs"
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
#pragma clang diagnostic ignored "-Wnonportable-include-path"
#pragma clang diagnostic ignored "-Wsequence-point"
#pragma clang diagnostic ignored "-Wsign-compare"
diff --git a/extensions/source/activex/so_activex.cxx b/extensions/source/activex/so_activex.cxx
index 70682a416b53..a4ce480613dc 100644
--- a/extensions/source/activex/so_activex.cxx
+++ b/extensions/source/activex/so_activex.cxx
@@ -27,15 +27,7 @@
#include "StdAfx2.h"
#include "resource.h"
#include <initguid.h>
-
-#if defined __clang__
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
-#endif
#include <so_activex.h>
-#if defined __clang__
-#pragma clang diagnostic pop
-#endif
#if defined __clang__
#pragma clang diagnostic push
diff --git a/extensions/source/ole/oledll.cxx b/extensions/source/ole/oledll.cxx
index 1275f4dc60c5..9ed73a33042d 100644
--- a/extensions/source/ole/oledll.cxx
+++ b/extensions/source/ole/oledll.cxx
@@ -30,7 +30,6 @@
#pragma clang diagnostic ignored "-Winvalid-noreturn"
#pragma clang diagnostic ignored "-Wmicrosoft"
#pragma clang diagnostic ignored "-Wnon-pod-varargs"
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
#endif
#include <atlbase.h>
diff --git a/extensions/source/ole/unoobjw.cxx b/extensions/source/ole/unoobjw.cxx
index 28286bddb1e3..936e049b147a 100644
--- a/extensions/source/ole/unoobjw.cxx
+++ b/extensions/source/ole/unoobjw.cxx
@@ -41,7 +41,6 @@
#pragma clang diagnostic ignored "-Winvalid-noreturn"
#pragma clang diagnostic ignored "-Wmicrosoft"
#pragma clang diagnostic ignored "-Wnon-pod-varargs"
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
#pragma clang diagnostic ignored "-Wnonportable-include-path"
#pragma clang diagnostic ignored "-Wsequence-point"
#pragma clang diagnostic ignored "-Wtypename-missing"
diff --git a/extensions/source/ole/wincrap.hxx b/extensions/source/ole/wincrap.hxx
index 4da57d53c173..3c8417cf929a 100644
--- a/extensions/source/ole/wincrap.hxx
+++ b/extensions/source/ole/wincrap.hxx
@@ -43,7 +43,6 @@
#pragma clang diagnostic ignored "-Winvalid-noreturn"
#pragma clang diagnostic ignored "-Wmicrosoft"
#pragma clang diagnostic ignored "-Wnon-pod-varargs"
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
#endif
// from oleobjw.hxx
diff --git a/extensions/source/ole/windata.hxx b/extensions/source/ole/windata.hxx
index edf3c1d45ab8..d9c4cb31436d 100644
--- a/extensions/source/ole/windata.hxx
+++ b/extensions/source/ole/windata.hxx
@@ -29,7 +29,6 @@
#pragma clang diagnostic ignored "-Winvalid-noreturn"
#pragma clang diagnostic ignored "-Wmicrosoft"
#pragma clang diagnostic ignored "-Wnon-pod-varargs"
-#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
#endif
#include <atlbase.h>