basctl/source/basicide/docsignature.cxx                           |    4 
 basctl/source/inc/docsignature.hxx                                |    1 
 basegfx/source/curve/b2dcubicbezier.cxx                           |    2 
 basic/source/runtime/dllmgr-none.cxx                              |    2 
 basic/source/runtime/dllmgr.hxx                                   |    2 
 basic/source/sbx/sbxdec.cxx                                       |    4 
 basic/source/sbx/sbxdec.hxx                                       |    2 
 compilerplugins/clang/trivialdestructor.cxx                       |  133 
++++++++++
 dbaccess/source/ui/querydesign/TableFieldInfo.cxx                 |    2 
 dbaccess/source/ui/querydesign/TableFieldInfo.hxx                 |    1 
 desktop/source/app/cmdlineargs.cxx                                |    2 
 desktop/source/app/cmdlineargs.hxx                                |    1 
 drawinglayer/source/attribute/sdrglowattribute.cxx                |    2 
 editeng/source/editeng/eertfpar.cxx                               |    4 
 filter/source/msfilter/svdfppt.cxx                                |    5 
 hwpfilter/source/htags.cxx                                        |    4 
 hwpfilter/source/htags.h                                          |    3 
 include/basegfx/curve/b2dcubicbezier.hxx                          |    1 
 include/drawinglayer/attribute/sdrglowattribute.hxx               |    2 
 include/editeng/editdata.hxx                                      |    1 
 include/filter/msfilter/svdfppt.hxx                               |    1 
 include/jvmaccess/unovirtualmachine.hxx                           |    2 
 include/jvmaccess/virtualmachine.hxx                              |    2 
 include/oox/drawingml/chart/modelbase.hxx                         |    1 
 include/svl/itemiter.hxx                                          |    1 
 include/svx/colorwindow.hxx                                       |    1 
 include/svx/dlgctl3d.hxx                                          |    1 
 include/svx/fmobjfac.hxx                                          |    1 
 include/svx/objfac3d.hxx                                          |    1 
 include/svx/svdview.hxx                                           |    1 
 include/vcl/GraphicNativeMetadata.hxx                             |    1 
 include/vcl/GraphicNativeTransform.hxx                            |    1 
 include/vcl/cvtgrf.hxx                                            |    1 
 include/vcl/mtfxmldump.hxx                                        |    1 
 include/vcl/toolkit/treelistbox.hxx                               |    1 
 include/xmloff/DashStyle.hxx                                      |    2 
 include/xmloff/GradientStyle.hxx                                  |    2 
 include/xmloff/HatchStyle.hxx                                     |    2 
 include/xmloff/MarkerStyle.hxx                                    |    2 
 include/xmloff/xmlnume.hxx                                        |    1 
 jvmaccess/source/unovirtualmachine.cxx                            |    2 
 jvmaccess/source/virtualmachine.cxx                               |    3 
 jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx                  |    5 
 jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx                  |    1 
 lotuswordpro/inc/lwpdropcapmgr.hxx                                |    1 
 lotuswordpro/source/filter/lwpdivopts.cxx                         |    5 
 lotuswordpro/source/filter/lwpdivopts.hxx                         |    2 
 lotuswordpro/source/filter/lwpdropcapmgr.cxx                      |    2 
 lotuswordpro/source/filter/lwpframelayout.cxx                     |    2 
 lotuswordpro/source/filter/lwpframelayout.hxx                     |    1 
 lotuswordpro/source/filter/lwplaypiece.cxx                        |    9 
 lotuswordpro/source/filter/lwplaypiece.hxx                        |    3 
 lotuswordpro/source/filter/lwpsdwfileloader.cxx                   |    2 
 lotuswordpro/source/filter/lwpsdwfileloader.hxx                   |    1 
 lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx             |    4 
 lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx             |    1 
 oox/inc/drawingml/chart/plotareamodel.hxx                         |    2 
 oox/inc/drawingml/chart/seriesmodel.hxx                           |    1 
 oox/inc/drawingml/chart/titlemodel.hxx                            |    1 
 oox/source/drawingml/chart/modelbase.cxx                          |    4 
 oox/source/drawingml/chart/plotareamodel.cxx                      |    8 
 oox/source/drawingml/chart/seriesmodel.cxx                        |    4 
 oox/source/drawingml/chart/titlemodel.cxx                         |    4 
 package/inc/CRC32.hxx                                             |    1 
 package/source/zipapi/CRC32.cxx                                   |    3 
 sc/inc/compressedarray.hxx                                        |    1 
 sc/inc/dpoutputgeometry.hxx                                       |    1 
 sc/inc/dptabres.hxx                                               |    1 
 sc/inc/pagepar.hxx                                                |    2 
 sc/inc/table.hxx                                                  |    1 
 sc/source/core/data/compressedarray.cxx                           |    5 
 sc/source/core/data/dpoutputgeometry.cxx                          |    4 
 sc/source/core/data/dptabres.cxx                                  |    4 
 sc/source/core/data/pagepar.cxx                                   |    8 
 sc/source/core/data/table1.cxx                                    |    4 
 sc/source/filter/xml/XMLExportDDELinks.cxx                        |    4 
 sc/source/filter/xml/XMLExportDDELinks.hxx                        |    1 
 sc/source/filter/xml/XMLExportDataPilot.cxx                       |    4 
 sc/source/filter/xml/XMLExportDataPilot.hxx                       |    1 
 sc/source/filter/xml/XMLExportDatabaseRanges.cxx                  |    4 
 sc/source/filter/xml/XMLExportDatabaseRanges.hxx                  |    1 
 sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx |    3 
 sc/source/ui/dbgui/foptmgr.cxx                                    |    4 
 sc/source/ui/inc/TableFillingAndNavigationTools.hxx               |    1 
 sc/source/ui/inc/conflictsdlg.hxx                                 |    2 
 sc/source/ui/inc/foptmgr.hxx                                      |    1 
 sc/source/ui/miscdlgs/conflictsdlg.cxx                            |    8 
 sd/source/ui/slidesorter/controller/SlsProperties.cxx             |    4 
 sd/source/ui/slidesorter/controller/SlsSlotManager.cxx            |    4 
 sd/source/ui/slidesorter/inc/controller/SlsProperties.hxx         |    1 
 sd/source/ui/slidesorter/inc/controller/SlsSlotManager.hxx        |    2 
 sd/source/ui/slidesorter/inc/model/SlsVisualState.hxx             |    1 
 sd/source/ui/slidesorter/model/SlsVisualState.cxx                 |    2 
 svl/source/items/itemiter.cxx                                     |    2 
 svx/source/dialog/dlgctl3d.cxx                                    |    4 
 svx/source/engine3d/objfac3d.cxx                                  |    4 
 svx/source/form/fmobjfac.cxx                                      |    4 
 svx/source/gallery2/codec.cxx                                     |    4 
 svx/source/gallery2/codec.hxx                                     |    1 
 svx/source/svdraw/svdview.cxx                                     |    5 
 svx/source/tbxctrls/tbcontrl.cxx                                  |    4 
 sw/inc/unomap.hxx                                                 |    1 
 sw/source/core/access/accselectionhelper.cxx                      |    4 
 sw/source/core/access/accselectionhelper.hxx                      |    1 
 sw/source/core/inc/environmentofanchoredobject.hxx                |    4 
 sw/source/core/objectpositioning/environmentofanchoredobject.cxx  |    3 
 sw/source/core/unocore/unomap1.cxx                                |    4 
 sw/source/filter/ww8/WW8TableInfo.cxx                             |    4 
 sw/source/filter/ww8/WW8TableInfo.hxx                             |    1 
 sw/source/filter/xml/xmlbrsh.cxx                                  |    4 
 sw/source/filter/xml/xmlbrshe.hxx                                 |    1 
 vcl/inc/BitmapSymmetryCheck.hxx                                   |    1 
 vcl/source/bitmap/BitmapSymmetryCheck.cxx                         |    3 
 vcl/source/filter/GraphicNativeMetadata.cxx                       |    2 
 vcl/source/filter/GraphicNativeTransform.cxx                      |    2 
 vcl/source/filter/idxf/dxfreprd.cxx                               |    5 
 vcl/source/filter/idxf/dxfreprd.hxx                               |    1 
 vcl/source/filter/itiff/lzwdecom.cxx                              |    5 
 vcl/source/filter/itiff/lzwdecom.hxx                              |    1 
 vcl/source/filter/jpeg/Exif.cxx                                   |    3 
 vcl/source/filter/jpeg/Exif.hxx                                   |    1 
 vcl/source/filter/jpeg/JpegTransform.cxx                          |    3 
 vcl/source/filter/jpeg/JpegTransform.hxx                          |    1 
 vcl/source/gdi/cvtgrf.cxx                                         |    4 
 vcl/source/gdi/mtfxmldump.cxx                                     |    3 
 vcl/source/treelist/treelistbox.cxx                               |    5 
 xmloff/inc/TransGradientStyle.hxx                                 |    2 
 xmloff/inc/XMLBackgroundImageExport.hxx                           |    2 
 xmloff/inc/XMLImageMapExport.hxx                                  |    2 
 xmloff/inc/xmltabe.hxx                                            |    1 
 xmloff/source/chart/SchXMLPlotAreaContext.cxx                     |    4 
 xmloff/source/chart/SchXMLPlotAreaContext.hxx                     |    1 
 xmloff/source/draw/XMLImageMapExport.cxx                          |    5 
 xmloff/source/style/DashStyle.cxx                                 |    8 
 xmloff/source/style/GradientStyle.cxx                             |    8 
 xmloff/source/style/HatchStyle.cxx                                |    8 
 xmloff/source/style/MarkerStyle.cxx                               |    8 
 xmloff/source/style/TransGradientStyle.cxx                        |    8 
 xmloff/source/style/XMLBackgroundImageExport.cxx                  |    4 
 xmloff/source/style/XMLFootnoteSeparatorExport.cxx                |    5 
 xmloff/source/style/XMLFootnoteSeparatorExport.hxx                |    2 
 xmloff/source/style/xmlnume.cxx                                   |    4 
 xmloff/source/style/xmltabe.cxx                                   |    4 
 xmloff/source/text/XMLIndexMarkExport.cxx                         |    4 
 xmloff/source/text/XMLIndexMarkExport.hxx                         |    2 
 xmloff/source/text/txtdrope.cxx                                   |    4 
 xmloff/source/text/txtdrope.hxx                                   |    1 
 147 files changed, 142 insertions(+), 395 deletions(-)

New commits:
commit 7002caa97e10d29353d3490b4fbb782d436575b3
Author:     Noel Grandin <[email protected]>
AuthorDate: Thu Mar 10 14:41:47 2022 +0200
Commit:     Noel Grandin <[email protected]>
CommitDate: Fri Mar 11 09:06:06 2022 +0100

    new loplugin:trivialdestructor
    
    look for potentially trivial destructors that can then be elided
    
    Change-Id: I435c251bd4291b5864c20d68f88676faac7c43fb
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131318
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <[email protected]>

diff --git a/basctl/source/basicide/docsignature.cxx 
b/basctl/source/basicide/docsignature.cxx
index 701c9d478f1a..08d7a1ab9c13 100644
--- a/basctl/source/basicide/docsignature.cxx
+++ b/basctl/source/basicide/docsignature.cxx
@@ -51,10 +51,6 @@ namespace basctl
         m_pShell = pShell;
     }
 
-    DocumentSignature::~DocumentSignature()
-    {
-    }
-
     bool DocumentSignature::supportsSignatures() const
     {
         return ( m_pShell != nullptr );
diff --git a/basctl/source/inc/docsignature.hxx 
b/basctl/source/inc/docsignature.hxx
index 9dd66da678b8..1681807d390e 100644
--- a/basctl/source/inc/docsignature.hxx
+++ b/basctl/source/inc/docsignature.hxx
@@ -39,7 +39,6 @@ namespace basctl
             which does not support being signed, the DocumentSignature 
instance is invalid afterwards.
         */
         explicit DocumentSignature (ScriptDocument const&);
-        ~DocumentSignature();
 
         /** determines whether the instance is valid
 
diff --git a/basegfx/source/curve/b2dcubicbezier.cxx 
b/basegfx/source/curve/b2dcubicbezier.cxx
index a04c17568b38..6528e1492a32 100644
--- a/basegfx/source/curve/b2dcubicbezier.cxx
+++ b/basegfx/source/curve/b2dcubicbezier.cxx
@@ -337,8 +337,6 @@ namespace basegfx
     {
     }
 
-    B2DCubicBezier::~B2DCubicBezier() = default;
-
     // assignment operator
     B2DCubicBezier& B2DCubicBezier::operator=(const B2DCubicBezier&) = default;
 
diff --git a/basic/source/runtime/dllmgr-none.cxx 
b/basic/source/runtime/dllmgr-none.cxx
index 7d49ba1bdcdb..4c7f700a9eef 100644
--- a/basic/source/runtime/dllmgr-none.cxx
+++ b/basic/source/runtime/dllmgr-none.cxx
@@ -106,6 +106,8 @@ void SbiDllMgr::FreeDll(SAL_UNUSED_PARAMETER OUString const 
&) {}
 
 SbiDllMgr::SbiDllMgr() = default;
 
+#if defined(_WIN32) && !defined(_ARM64_)
 SbiDllMgr::~SbiDllMgr() = default;
+#endif
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/basic/source/runtime/dllmgr.hxx b/basic/source/runtime/dllmgr.hxx
index 3f984c95105c..e0a99e7f4d3a 100644
--- a/basic/source/runtime/dllmgr.hxx
+++ b/basic/source/runtime/dllmgr.hxx
@@ -33,7 +33,9 @@ public:
 
     SbiDllMgr();
 
+#if defined(_WIN32) && !defined(_ARM64_)
     ~SbiDllMgr();
+#endif
 
     ErrCode Call(
         std::u16string_view function, std::u16string_view library,
diff --git a/basic/source/sbx/sbxdec.cxx b/basic/source/sbx/sbxdec.cxx
index acfc31acfbd0..3c8f1eec4d78 100644
--- a/basic/source/sbx/sbxdec.cxx
+++ b/basic/source/sbx/sbxdec.cxx
@@ -70,10 +70,6 @@ void SbxDecimal::fillAutomationDecimal
 #endif
 }
 
-SbxDecimal::~SbxDecimal()
-{
-}
-
 void releaseDecimalPtr( SbxDecimal*& rpDecimal )
 {
     if( rpDecimal )
diff --git a/basic/source/sbx/sbxdec.hxx b/basic/source/sbx/sbxdec.hxx
index 3db396ea6cb4..756fdc9f9273 100644
--- a/basic/source/sbx/sbxdec.hxx
+++ b/basic/source/sbx/sbxdec.hxx
@@ -46,8 +46,6 @@ public:
     SbxDecimal( const SbxDecimal& rDec );
     explicit SbxDecimal( const css::bridge::oleautomation::Decimal& 
rAutomationDec );
 
-    ~SbxDecimal();
-
     void addRef()
         { mnRefCount++; }
 
diff --git a/compilerplugins/clang/trivialdestructor.cxx 
b/compilerplugins/clang/trivialdestructor.cxx
new file mode 100644
index 000000000000..208e4931a152
--- /dev/null
+++ b/compilerplugins/clang/trivialdestructor.cxx
@@ -0,0 +1,133 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#include <cassert>
+#include <string>
+#include <iostream>
+#include <unordered_map>
+#include <unordered_set>
+
+#include "plugin.hxx"
+#include "check.hxx"
+#include "config_clang.h"
+#include "clang/AST/CXXInheritance.h"
+#include "clang/AST/StmtVisitor.h"
+
+// Look for explicit destructors that can be trivial (and therefore don't need 
to be declared)
+
+namespace
+{
+class TrivialDestructor : public loplugin::FilteringPlugin<TrivialDestructor>
+{
+public:
+    explicit TrivialDestructor(loplugin::InstantiationData const& data)
+        : FilteringPlugin(data)
+    {
+    }
+
+    virtual void run() override { 
TraverseDecl(compiler.getASTContext().getTranslationUnitDecl()); }
+
+    bool VisitCXXDestructorDecl(CXXDestructorDecl const*);
+
+private:
+    bool HasTrivialDestructorBody(const CXXRecordDecl* BaseClassDecl,
+                                  const CXXRecordDecl* MostDerivedClassDecl);
+    bool FieldHasTrivialDestructorBody(const FieldDecl* Field);
+};
+
+bool TrivialDestructor::VisitCXXDestructorDecl(CXXDestructorDecl const* 
destructorDecl)
+{
+    if (ignoreLocation(destructorDecl))
+        return true;
+    if (!destructorDecl->hasTrivialBody())
+        return true;
+    if (destructorDecl->isVirtual())
+        return true;
+    if (destructorDecl->getExceptionSpecType() != EST_None)
+        return true;
+    if (destructorDecl->getAccess() != AS_public)
+        return true;
+    if (isInUnoIncludeFile(
+            
compiler.getSourceManager().getSpellingLoc(destructorDecl->getLocation())))
+        return true;
+    if (!HasTrivialDestructorBody(destructorDecl->getParent(), 
destructorDecl->getParent()))
+        return true;
+
+    report(DiagnosticsEngine::Warning, "no need for explicit destructor decl",
+           destructorDecl->getLocation())
+        << destructorDecl->getSourceRange();
+    if (destructorDecl->getCanonicalDecl() != destructorDecl)
+    {
+        destructorDecl = destructorDecl->getCanonicalDecl();
+        report(DiagnosticsEngine::Warning, "no need for explicit destructor 
decl",
+               destructorDecl->getLocation())
+            << destructorDecl->getSourceRange();
+    }
+    return true;
+}
+
+bool TrivialDestructor::HasTrivialDestructorBody(const CXXRecordDecl* 
BaseClassDecl,
+                                                 const CXXRecordDecl* 
MostDerivedClassDecl)
+{
+    if (BaseClassDecl != MostDerivedClassDecl && 
!BaseClassDecl->hasTrivialDestructor())
+        return false;
+
+    // Check fields.
+    for (const auto* field : BaseClassDecl->fields())
+        if (!FieldHasTrivialDestructorBody(field))
+            return false;
+
+    // Check non-virtual bases.
+    for (const auto& I : BaseClassDecl->bases())
+    {
+        if (I.isVirtual())
+            continue;
+        if (!I.getType()->isRecordType())
+            continue;
+        const CXXRecordDecl* NonVirtualBase = 
I.getType()->getAsCXXRecordDecl();
+        if (NonVirtualBase && !HasTrivialDestructorBody(NonVirtualBase, 
MostDerivedClassDecl))
+            return false;
+    }
+
+    if (BaseClassDecl == MostDerivedClassDecl)
+    {
+        // Check virtual bases.
+        for (const auto& I : BaseClassDecl->vbases())
+        {
+            if (!I.getType()->isRecordType())
+                continue;
+            const CXXRecordDecl* VirtualBase = 
I.getType()->getAsCXXRecordDecl();
+            if (VirtualBase && !HasTrivialDestructorBody(VirtualBase, 
MostDerivedClassDecl))
+                return false;
+        }
+    }
+    return true;
+}
+
+bool TrivialDestructor::FieldHasTrivialDestructorBody(const FieldDecl* Field)
+{
+    QualType FieldBaseElementType = 
compiler.getASTContext().getBaseElementType(Field->getType());
+
+    const RecordType* RT = FieldBaseElementType->getAs<RecordType>();
+    if (!RT)
+        return true;
+
+    CXXRecordDecl* FieldClassDecl = cast<CXXRecordDecl>(RT->getDecl());
+
+    // The destructor for an implicit anonymous union member is never invoked.
+    if (FieldClassDecl->isUnion() && 
FieldClassDecl->isAnonymousStructOrUnion())
+        return false;
+
+    return FieldClassDecl->hasTrivialDestructor();
+}
+
+loplugin::Plugin::Registration<TrivialDestructor> X("trivialdestructor", true);
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/source/ui/querydesign/TableFieldInfo.cxx 
b/dbaccess/source/ui/querydesign/TableFieldInfo.cxx
index a0c8ff747e34..808862c11c4e 100644
--- a/dbaccess/source/ui/querydesign/TableFieldInfo.cxx
+++ b/dbaccess/source/ui/querydesign/TableFieldInfo.cxx
@@ -27,6 +27,4 @@ OTableFieldInfo::OTableFieldInfo()
 {
 }
 
-OTableFieldInfo::~OTableFieldInfo() {}
-
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/dbaccess/source/ui/querydesign/TableFieldInfo.hxx 
b/dbaccess/source/ui/querydesign/TableFieldInfo.hxx
index 14e588845d39..e7d2c9b72da4 100644
--- a/dbaccess/source/ui/querydesign/TableFieldInfo.hxx
+++ b/dbaccess/source/ui/querydesign/TableFieldInfo.hxx
@@ -31,7 +31,6 @@ namespace dbaui
 
     public:
         OTableFieldInfo();
-        ~OTableFieldInfo();
 
         ETableFieldType  GetKeyType() const { return m_eFieldType; }
         void             SetKey(ETableFieldType bKey) { m_eFieldType = bKey; }
diff --git a/desktop/source/app/cmdlineargs.cxx 
b/desktop/source/app/cmdlineargs.cxx
index 4d5a3bb78396..95f00cb097bc 100644
--- a/desktop/source/app/cmdlineargs.cxx
+++ b/desktop/source/app/cmdlineargs.cxx
@@ -251,8 +251,6 @@ CommandLineArgs::Supplier::Exception::Exception() {}
 
 CommandLineArgs::Supplier::Exception::Exception(Exception const &) {}
 
-CommandLineArgs::Supplier::Exception::~Exception() {}
-
 CommandLineArgs::Supplier::Exception &
 CommandLineArgs::Supplier::Exception::operator =(Exception const &)
 { return *this; }
diff --git a/desktop/source/app/cmdlineargs.hxx 
b/desktop/source/app/cmdlineargs.hxx
index fd9aa8f11380..74236f5b314f 100644
--- a/desktop/source/app/cmdlineargs.hxx
+++ b/desktop/source/app/cmdlineargs.hxx
@@ -40,7 +40,6 @@ class CommandLineArgs
             public:
                 Exception();
                 Exception(Exception const &);
-                ~Exception();
                 Exception & operator =(Exception const &);
             };
 
diff --git a/drawinglayer/source/attribute/sdrglowattribute.cxx 
b/drawinglayer/source/attribute/sdrglowattribute.cxx
index 36339dac0933..c27390d64d6d 100644
--- a/drawinglayer/source/attribute/sdrglowattribute.cxx
+++ b/drawinglayer/source/attribute/sdrglowattribute.cxx
@@ -23,8 +23,6 @@ SdrGlowAttribute::SdrGlowAttribute(const SdrGlowAttribute&) = 
default;
 
 SdrGlowAttribute::SdrGlowAttribute(SdrGlowAttribute&&) = default;
 
-SdrGlowAttribute::~SdrGlowAttribute() = default;
-
 SdrGlowAttribute& SdrGlowAttribute::operator=(const SdrGlowAttribute&) = 
default;
 
 SdrGlowAttribute& SdrGlowAttribute::operator=(SdrGlowAttribute&&) = default;
diff --git a/editeng/source/editeng/eertfpar.cxx 
b/editeng/source/editeng/eertfpar.cxx
index 8bf696a02603..7a8b93fbc78d 100644
--- a/editeng/source/editeng/eertfpar.cxx
+++ b/editeng/source/editeng/eertfpar.cxx
@@ -55,10 +55,6 @@ RtfImportInfo::RtfImportInfo( RtfImportState eSt, 
SvParser<int>* pPrsrs, const E
     nTokenValue = 0;
 }
 
-RtfImportInfo::~RtfImportInfo()
-{
-}
-
 constexpr MapUnit gRTFMapUnit = MapUnit::MapTwip;
 
 EditRTFParser::EditRTFParser(
diff --git a/filter/source/msfilter/svdfppt.cxx 
b/filter/source/msfilter/svdfppt.cxx
index b4b9f3371b14..52136e22ddd1 100644
--- a/filter/source/msfilter/svdfppt.cxx
+++ b/filter/source/msfilter/svdfppt.cxx
@@ -4764,11 +4764,6 @@ bool PPTTextParagraphStyleAtomInterpreter::Read( 
SvStream& rIn, const DffRecordH
     return bValid;
 }
 
-PPTTextParagraphStyleAtomInterpreter::~PPTTextParagraphStyleAtomInterpreter()
-{
-
-}
-
 PPTTextSpecInfo::PPTTextSpecInfo( sal_uInt32 _nCharIdx ) :
     nCharIdx        ( _nCharIdx ),
     nDontKnow       ( 1 )
diff --git a/hwpfilter/source/htags.cxx b/hwpfilter/source/htags.cxx
index 4644d286d75c..33e0c252f7bd 100644
--- a/hwpfilter/source/htags.cxx
+++ b/hwpfilter/source/htags.cxx
@@ -85,13 +85,13 @@ OlePicture::OlePicture(int tsize)
         return;
 };
 
+#ifdef _WIN32
 OlePicture::~OlePicture()
 {
-#ifdef _WIN32
      if( pis )
           pis->Release();
-#endif
 };
+#endif
 
 #define FILESTG_SIGNATURE_NORMAL 0xF8995568
 
diff --git a/hwpfilter/source/htags.h b/hwpfilter/source/htags.h
index 7265f5d11742..0a302bf188af 100644
--- a/hwpfilter/source/htags.h
+++ b/hwpfilter/source/htags.h
@@ -64,8 +64,9 @@ struct OlePicture
     IStorage* pis;
 #endif
     explicit OlePicture(int tsize);
+#ifdef _WIN32
     ~OlePicture(void);
-
+#endif
     void Read(HWPFile& hwpf);
 };
 #endif // INCLUDED_HWPFILTER_SOURCE_HTAGS_H
diff --git a/include/basegfx/curve/b2dcubicbezier.hxx 
b/include/basegfx/curve/b2dcubicbezier.hxx
index 78519073ffff..4d8d9406e930 100644
--- a/include/basegfx/curve/b2dcubicbezier.hxx
+++ b/include/basegfx/curve/b2dcubicbezier.hxx
@@ -42,7 +42,6 @@ namespace basegfx
         B2DCubicBezier();
         B2DCubicBezier(const B2DCubicBezier& rBezier);
         B2DCubicBezier(const B2DPoint& rStart, const B2DPoint& rControlPointA, 
const B2DPoint& rControlPointB, const B2DPoint& rEnd);
-        ~B2DCubicBezier();
 
         // assignment operator
         B2DCubicBezier& operator=(const B2DCubicBezier& rBezier);
diff --git a/include/drawinglayer/attribute/sdrglowattribute.hxx 
b/include/drawinglayer/attribute/sdrglowattribute.hxx
index 156beccc39e7..d4045bbc14f7 100644
--- a/include/drawinglayer/attribute/sdrglowattribute.hxx
+++ b/include/drawinglayer/attribute/sdrglowattribute.hxx
@@ -26,7 +26,7 @@ public:
     SdrGlowAttribute();
     SdrGlowAttribute(const SdrGlowAttribute&);
     SdrGlowAttribute(SdrGlowAttribute&&);
-    ~SdrGlowAttribute();
+
     bool operator==(const SdrGlowAttribute& rCandidate) const;
 
     SdrGlowAttribute& operator=(const SdrGlowAttribute&);
diff --git a/include/editeng/editdata.hxx b/include/editeng/editdata.hxx
index 5ed618fc7b80..8366b022e9b8 100644
--- a/include/editeng/editdata.hxx
+++ b/include/editeng/editdata.hxx
@@ -249,7 +249,6 @@ struct RtfImportInfo
     short                   nTokenValue;
 
     RtfImportInfo( RtfImportState eState, SvParser<int>* pPrsrs, const 
ESelection& rSel );
-    ~RtfImportInfo();
 };
 
 struct ParagraphInfos
diff --git a/include/filter/msfilter/svdfppt.hxx 
b/include/filter/msfilter/svdfppt.hxx
index 7ff89082d33c..5ae54baedf2c 100644
--- a/include/filter/msfilter/svdfppt.hxx
+++ b/include/filter/msfilter/svdfppt.hxx
@@ -666,7 +666,6 @@ struct PPTTextParagraphStyleAtomInterpreter
     bool        bLatinTextWrap;
 
                 PPTTextParagraphStyleAtomInterpreter();
-                ~PPTTextParagraphStyleAtomInterpreter();
 
     bool        Read( SvStream& rIn, const DffRecordHeader& rRecHd );
 };
diff --git a/include/jvmaccess/unovirtualmachine.hxx 
b/include/jvmaccess/unovirtualmachine.hxx
index ac7cf107f4d4..f3e34e641d6b 100644
--- a/include/jvmaccess/unovirtualmachine.hxx
+++ b/include/jvmaccess/unovirtualmachine.hxx
@@ -44,8 +44,6 @@ public:
 
         CreationException(CreationException const&);
 
-        ~CreationException();
-
         CreationException& operator=(CreationException const&);
     };
 
diff --git a/include/jvmaccess/virtualmachine.hxx 
b/include/jvmaccess/virtualmachine.hxx
index 22b224e348b6..b4edf4de98d9 100644
--- a/include/jvmaccess/virtualmachine.hxx
+++ b/include/jvmaccess/virtualmachine.hxx
@@ -62,8 +62,6 @@ public:
 
             CreationException(CreationException const&);
 
-            ~CreationException();
-
             CreationException& operator=(CreationException const&);
         };
 
diff --git a/include/oox/drawingml/chart/modelbase.hxx 
b/include/oox/drawingml/chart/modelbase.hxx
index cdec3da17ce4..a167077753e0 100644
--- a/include/oox/drawingml/chart/modelbase.hxx
+++ b/include/oox/drawingml/chart/modelbase.hxx
@@ -116,7 +116,6 @@ struct LayoutModel
     bool                mbAutoLayout;       /// True = automatic positioning.
 
                         LayoutModel();
-                        ~LayoutModel();
 };
 
 } // namespace oox::drawingml::chart
diff --git a/include/svl/itemiter.hxx b/include/svl/itemiter.hxx
index 910b430e4161..be2bf2e4360d 100644
--- a/include/svl/itemiter.hxx
+++ b/include/svl/itemiter.hxx
@@ -33,7 +33,6 @@ class SVL_DLLPUBLIC SfxItemIter
 
 public:
     SfxItemIter(const SfxItemSet& rSet);
-    ~SfxItemIter();
 
     /// get item, or null if no items
     const SfxPoolItem* GetCurItem() const
diff --git a/include/svx/colorwindow.hxx b/include/svx/colorwindow.hxx
index 2fc23adde44d..823c819f0e2c 100644
--- a/include/svx/colorwindow.hxx
+++ b/include/svx/colorwindow.hxx
@@ -39,7 +39,6 @@ class SVXCORE_DLLPUBLIC ColorStatus
     Color maBLTRColor;
 public:
     ColorStatus();
-    ~ColorStatus();
     void statusChanged( const css::frame::FeatureStateEvent& rEvent );
     Color GetColor();
 };
diff --git a/include/svx/dlgctl3d.hxx b/include/svx/dlgctl3d.hxx
index d5d75e72dc62..afa246b1601a 100644
--- a/include/svx/dlgctl3d.hxx
+++ b/include/svx/dlgctl3d.hxx
@@ -151,7 +151,6 @@ class SAL_WARN_UNUSED SVX_DLLPUBLIC SvxLightCtl3D
 public:
     SvxLightCtl3D(Svx3DLightControl& rLightControl, weld::Scale& rHori,
                weld::Scale& rVert, weld::Button& rButton);
-    ~SvxLightCtl3D();
 
     // check the selection for validity
     void CheckSelection();
diff --git a/include/svx/fmobjfac.hxx b/include/svx/fmobjfac.hxx
index 188ff895d8f7..f165cf7b2247 100644
--- a/include/svx/fmobjfac.hxx
+++ b/include/svx/fmobjfac.hxx
@@ -30,7 +30,6 @@ class SVX_DLLPUBLIC FmFormObjFactory
 {
 public:
     FmFormObjFactory();
-    ~FmFormObjFactory();
 
     DECL_DLLPRIVATE_STATIC_LINK(FmFormObjFactory, MakeObject, 
SdrObjCreatorParams, SdrObject*);
 };
diff --git a/include/svx/objfac3d.hxx b/include/svx/objfac3d.hxx
index 75201a554573..24b14de5a46b 100644
--- a/include/svx/objfac3d.hxx
+++ b/include/svx/objfac3d.hxx
@@ -36,7 +36,6 @@ class SVXCORE_DLLPUBLIC E3dObjFactory
 {
 public:
     E3dObjFactory();
-    ~E3dObjFactory();
 
     DECL_DLLPRIVATE_STATIC_LINK(E3dObjFactory, MakeObject, 
SdrObjCreatorParams, SdrObject*);
 };
diff --git a/include/svx/svdview.hxx b/include/svx/svdview.hxx
index 83c780b431ec..166990985830 100644
--- a/include/svx/svdview.hxx
+++ b/include/svx/svdview.hxx
@@ -123,7 +123,6 @@ struct SVXCORE_DLLPUBLIC SdrViewEvent
 
 public:
     SdrViewEvent();
-    ~SdrViewEvent();
 };
 
 // helper class for all D&D overlays
diff --git a/include/vcl/GraphicNativeMetadata.hxx 
b/include/vcl/GraphicNativeMetadata.hxx
index 7cc8b663f18a..7ef2adee8bbc 100644
--- a/include/vcl/GraphicNativeMetadata.hxx
+++ b/include/vcl/GraphicNativeMetadata.hxx
@@ -29,7 +29,6 @@ class VCL_DLLPUBLIC GraphicNativeMetadata final
 
 public:
     GraphicNativeMetadata();
-    ~GraphicNativeMetadata();
 
     bool read(Graphic const& rGraphic);
     bool read(SvStream& rStream);
diff --git a/include/vcl/GraphicNativeTransform.hxx 
b/include/vcl/GraphicNativeTransform.hxx
index eedec3a4ee00..2f82aa1583db 100644
--- a/include/vcl/GraphicNativeTransform.hxx
+++ b/include/vcl/GraphicNativeTransform.hxx
@@ -36,7 +36,6 @@ class VCL_DLLPUBLIC GraphicNativeTransform final
 
 public:
     GraphicNativeTransform(Graphic& rGraphic);
-    ~GraphicNativeTransform();
 
     void rotate(Degree10 aRotation);
 };
diff --git a/include/vcl/cvtgrf.hxx b/include/vcl/cvtgrf.hxx
index d43a7c0d2e75..f3d2024e815c 100644
--- a/include/vcl/cvtgrf.hxx
+++ b/include/vcl/cvtgrf.hxx
@@ -37,7 +37,6 @@ private:
 public:
 
                         GraphicConverter();
-                        ~GraphicConverter();
 
     static ErrCode      Import( SvStream& rIStm, Graphic& rGraphic, 
ConvertDataFormat nFormat = ConvertDataFormat::Unknown );
     static ErrCode      Export( SvStream& rOStm, const Graphic& rGraphic, 
ConvertDataFormat nFormat );
diff --git a/include/vcl/mtfxmldump.hxx b/include/vcl/mtfxmldump.hxx
index 3425bccb710f..9970ea8a0d5a 100644
--- a/include/vcl/mtfxmldump.hxx
+++ b/include/vcl/mtfxmldump.hxx
@@ -49,7 +49,6 @@ class VCL_DLLPUBLIC MetafileXmlDump final
 
 public:
     MetafileXmlDump();
-    ~MetafileXmlDump();
 
     void filterActionType(const MetaActionType nActionType, bool 
bShouldFilter);
     void filterAllActionTypes();
diff --git a/include/vcl/toolkit/treelistbox.hxx 
b/include/vcl/toolkit/treelistbox.hxx
index 69c07b422094..491adbdbea30 100644
--- a/include/vcl/toolkit/treelistbox.hxx
+++ b/include/vcl/toolkit/treelistbox.hxx
@@ -106,7 +106,6 @@ public:
             SvLBoxTab();
             SvLBoxTab( tools::Long nPos, SvLBoxTabFlags nFlags );
             SvLBoxTab( const SvLBoxTab& );
-            ~SvLBoxTab();
 
     SvLBoxTabFlags nFlags;
 
diff --git a/include/xmloff/DashStyle.hxx b/include/xmloff/DashStyle.hxx
index da31f66c0af9..c27234124556 100644
--- a/include/xmloff/DashStyle.hxx
+++ b/include/xmloff/DashStyle.hxx
@@ -38,7 +38,6 @@ class XMLOFF_DLLPUBLIC XMLDashStyleImport
 
 public:
     XMLDashStyleImport( SvXMLImport& rImport );
-    ~XMLDashStyleImport();
 
     void importXML(
         const css::uno::Reference< css::xml::sax::XFastAttributeList >& 
xAttrList,
@@ -53,7 +52,6 @@ class XMLOFF_DLLPUBLIC XMLDashStyleExport
 
 public:
     XMLDashStyleExport( SvXMLExport& rExport );
-    ~XMLDashStyleExport();
 
     void exportXML( const OUString& rStrName,
                         const css::uno::Any& rValue );
diff --git a/include/xmloff/GradientStyle.hxx b/include/xmloff/GradientStyle.hxx
index 8c4c4c686cd3..db946279a238 100644
--- a/include/xmloff/GradientStyle.hxx
+++ b/include/xmloff/GradientStyle.hxx
@@ -39,7 +39,6 @@ class XMLOFF_DLLPUBLIC XMLGradientStyleImport
 
 public:
     XMLGradientStyleImport( SvXMLImport& rImport );
-    ~XMLGradientStyleImport();
 
     void importXML(
         const css::uno::Reference< css::xml::sax::XFastAttributeList >& 
xAttrList,
@@ -54,7 +53,6 @@ class XMLOFF_DLLPUBLIC XMLGradientStyleExport
 
 public:
     XMLGradientStyleExport( SvXMLExport& rExport );
-    ~XMLGradientStyleExport();
 
     void exportXML(
         const OUString& rStrName,
diff --git a/include/xmloff/HatchStyle.hxx b/include/xmloff/HatchStyle.hxx
index 76e9ae621aa1..9ded654e53e2 100644
--- a/include/xmloff/HatchStyle.hxx
+++ b/include/xmloff/HatchStyle.hxx
@@ -39,7 +39,6 @@ class XMLOFF_DLLPUBLIC XMLHatchStyleImport
 
 public:
     XMLHatchStyleImport( SvXMLImport& rImport );
-    ~XMLHatchStyleImport();
 
     void importXML(
         const css::uno::Reference< css::xml::sax::XFastAttributeList>& 
xAttrList,
@@ -53,7 +52,6 @@ class XMLOFF_DLLPUBLIC XMLHatchStyleExport
 
 public:
     XMLHatchStyleExport( SvXMLExport& rExport );
-    ~XMLHatchStyleExport();
 
     void exportXML( const OUString& rStrName, const css::uno::Any& rValue );
 };
diff --git a/include/xmloff/MarkerStyle.hxx b/include/xmloff/MarkerStyle.hxx
index 33b39a6bd199..ce1ae3080a00 100644
--- a/include/xmloff/MarkerStyle.hxx
+++ b/include/xmloff/MarkerStyle.hxx
@@ -39,7 +39,6 @@ class XMLOFF_DLLPUBLIC XMLMarkerStyleImport
 
 public:
     XMLMarkerStyleImport( SvXMLImport& rImport );
-    ~XMLMarkerStyleImport();
 
     void importXML(
         const css::uno::Reference< css::xml::sax::XFastAttributeList >& 
xAttrList,
@@ -53,7 +52,6 @@ class XMLOFF_DLLPUBLIC XMLMarkerStyleExport
 
 public:
     XMLMarkerStyleExport( SvXMLExport& rExport );
-    ~XMLMarkerStyleExport();
 
     void exportXML(
         const OUString& rStrName,
diff --git a/include/xmloff/xmlnume.hxx b/include/xmloff/xmlnume.hxx
index 683d3025d4dd..68818f1076ff 100644
--- a/include/xmloff/xmlnume.hxx
+++ b/include/xmloff/xmlnume.hxx
@@ -57,7 +57,6 @@ class XMLOFF_DLLPUBLIC SvxXMLNumRuleExport final
 public:
 
     SvxXMLNumRuleExport( SvXMLExport& rExport );
-    ~SvxXMLNumRuleExport();
 
     // should be private but sw::StoredChapterNumberingExport needs it
     void exportLevelStyles(
diff --git a/jvmaccess/source/unovirtualmachine.cxx 
b/jvmaccess/source/unovirtualmachine.cxx
index d42a3a31d8ae..5387497326d4 100644
--- a/jvmaccess/source/unovirtualmachine.cxx
+++ b/jvmaccess/source/unovirtualmachine.cxx
@@ -34,8 +34,6 @@ UnoVirtualMachine::CreationException::CreationException(
     CreationException const &)
 {}
 
-UnoVirtualMachine::CreationException::~CreationException() {}
-
 UnoVirtualMachine::CreationException &
 UnoVirtualMachine::CreationException::operator =(CreationException const &) {
     return *this;
diff --git a/jvmaccess/source/virtualmachine.cxx 
b/jvmaccess/source/virtualmachine.cxx
index fdd6df8524b3..c37d555f23ca 100644
--- a/jvmaccess/source/virtualmachine.cxx
+++ b/jvmaccess/source/virtualmachine.cxx
@@ -33,9 +33,6 @@ 
VirtualMachine::AttachGuard::CreationException::CreationException(
     CreationException const &)
 {}
 
-VirtualMachine::AttachGuard::CreationException::~CreationException()
-{}
-
 VirtualMachine::AttachGuard::CreationException &
 VirtualMachine::AttachGuard::CreationException::operator =(
     CreationException const &)
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx 
b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
index c420ad3f1581..490d5febbea4 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
@@ -232,11 +232,6 @@ SunVersion::PreRelease SunVersion::getPreRelease(const 
char *szRelease)
         return Rel_NONE;
 }
 
-SunVersion::~SunVersion()
-{
-
-}
-
 /* Examples:
    a) 1.0 < 1.1
    b) 1.0 < 1.0.0
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx 
b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx
index 27d2aebcc6bc..58173b74fd58 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx
@@ -84,7 +84,6 @@ class SunVersion final
 public:
     explicit SunVersion(const char* szVer);
     explicit SunVersion(std::u16string_view usVer);
-    ~SunVersion();
 
     /**
        Pre-release versions are taken into account.
diff --git a/lotuswordpro/inc/lwpdropcapmgr.hxx 
b/lotuswordpro/inc/lwpdropcapmgr.hxx
index 6ad122e6952e..05ce571c7b87 100644
--- a/lotuswordpro/inc/lwpdropcapmgr.hxx
+++ b/lotuswordpro/inc/lwpdropcapmgr.hxx
@@ -67,7 +67,6 @@ class LwpDropcapMgr
 {
 public:
     LwpDropcapMgr();
-    ~LwpDropcapMgr();
     void SetXFPara(XFParagraph* pXFPara);
     XFParagraph* GetXFPara() { return m_pXFPara; }
 
diff --git a/lotuswordpro/source/filter/lwpdivopts.cxx 
b/lotuswordpro/source/filter/lwpdivopts.cxx
index bb52f28f1e2c..990239547cc0 100644
--- a/lotuswordpro/source/filter/lwpdivopts.cxx
+++ b/lotuswordpro/source/filter/lwpdivopts.cxx
@@ -69,9 +69,6 @@ LwpHyphenOptions::LwpHyphenOptions()
 {
 }
 
-LwpHyphenOptions::~LwpHyphenOptions()
-{}
-
 void LwpHyphenOptions::Read(LwpObjectStream *pStrm)
 {
     m_nFlags = pStrm->QuickReaduInt16();
@@ -86,8 +83,6 @@ LwpTextLanguage::LwpTextLanguage()
 {
 }
 
-LwpTextLanguage::~LwpTextLanguage(){}
-
 void LwpTextLanguage::Read(LwpObjectStream *pStrm)
 {
     m_nLanguage = pStrm->QuickReaduInt16();
diff --git a/lotuswordpro/source/filter/lwpdivopts.hxx 
b/lotuswordpro/source/filter/lwpdivopts.hxx
index effe4c2234d0..cfcd33858d90 100644
--- a/lotuswordpro/source/filter/lwpdivopts.hxx
+++ b/lotuswordpro/source/filter/lwpdivopts.hxx
@@ -69,7 +69,6 @@ class LwpHyphenOptions
 {
 public:
     LwpHyphenOptions();
-    ~LwpHyphenOptions();
     void Read(LwpObjectStream* pStrm);
 
 private:
@@ -92,7 +91,6 @@ class LwpTextLanguage
 {
 public:
     LwpTextLanguage();
-    ~LwpTextLanguage();
     void Read(LwpObjectStream* pStrm);
 
 private:
diff --git a/lotuswordpro/source/filter/lwpdropcapmgr.cxx 
b/lotuswordpro/source/filter/lwpdropcapmgr.cxx
index 816618bfc204..b8fb591de565 100644
--- a/lotuswordpro/source/filter/lwpdropcapmgr.cxx
+++ b/lotuswordpro/source/filter/lwpdropcapmgr.cxx
@@ -62,8 +62,6 @@
 
 LwpDropcapMgr::LwpDropcapMgr() { m_pXFPara = nullptr; }
 
-LwpDropcapMgr::~LwpDropcapMgr() {}
-
 void LwpDropcapMgr::SetXFPara(XFParagraph* pXFPara) { m_pXFPara = pXFPara; }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/lotuswordpro/source/filter/lwpframelayout.cxx 
b/lotuswordpro/source/filter/lwpframelayout.cxx
index c0f2e7e720de..7c983b01aace 100644
--- a/lotuswordpro/source/filter/lwpframelayout.cxx
+++ b/lotuswordpro/source/filter/lwpframelayout.cxx
@@ -741,8 +741,6 @@ bool LwpFrame::IsLeftWider()
 
 LwpFrameLink::LwpFrameLink() {}
 
-LwpFrameLink::~LwpFrameLink() {}
-
 /**
  * @descr frame link information
  *
diff --git a/lotuswordpro/source/filter/lwpframelayout.hxx 
b/lotuswordpro/source/filter/lwpframelayout.hxx
index 5937c75cbf1e..351be2cc6d6e 100644
--- a/lotuswordpro/source/filter/lwpframelayout.hxx
+++ b/lotuswordpro/source/filter/lwpframelayout.hxx
@@ -112,7 +112,6 @@ class LwpFrameLink
 {
 public:
     LwpFrameLink();
-    ~LwpFrameLink();
     void Read(LwpObjectStream* pStrm);
     LwpObjectID& GetNextLayout() { return m_NextLayout; }
     LwpObjectID& GetPreviousLayout() { return m_PreviousLayout; }
diff --git a/lotuswordpro/source/filter/lwplaypiece.cxx 
b/lotuswordpro/source/filter/lwplaypiece.cxx
index 22651e2de1cf..34a1e381e99c 100644
--- a/lotuswordpro/source/filter/lwplaypiece.cxx
+++ b/lotuswordpro/source/filter/lwplaypiece.cxx
@@ -67,9 +67,6 @@ LwpRotor::LwpRotor()
     : m_nRotation(0)
 {}
 
-LwpRotor::~LwpRotor()
-{}
-
 void LwpRotor:: Read(LwpObjectStream *pStrm)
 {
     m_nRotation = pStrm->QuickReadInt16();
@@ -252,9 +249,6 @@ LwpColumnInfo::LwpColumnInfo()
     , m_nGap(0)
 {}
 
-LwpColumnInfo::~LwpColumnInfo()
-{}
-
 void LwpColumnInfo:: Read(LwpObjectStream *pStrm)
 {
     m_nWidth = pStrm->QuickReadInt32();
@@ -328,9 +322,6 @@ LwpJoinStuff::LwpJoinStuff()
     , m_nScaling(0)
 {}
 
-LwpJoinStuff::~LwpJoinStuff()
-{}
-
 void LwpJoinStuff:: Read(LwpObjectStream *pStrm)
 {
     m_nWidth = pStrm->QuickReadInt32();
diff --git a/lotuswordpro/source/filter/lwplaypiece.hxx 
b/lotuswordpro/source/filter/lwplaypiece.hxx
index 4c5983c443eb..e05910041241 100644
--- a/lotuswordpro/source/filter/lwplaypiece.hxx
+++ b/lotuswordpro/source/filter/lwplaypiece.hxx
@@ -71,7 +71,6 @@ class LwpRotor
 {
 public:
     LwpRotor();
-    ~LwpRotor();
     void Read(LwpObjectStream* pStrm);
 
 private:
@@ -217,7 +216,6 @@ class LwpColumnInfo
 {
 public:
     LwpColumnInfo();
-    ~LwpColumnInfo();
     void Read(LwpObjectStream* pStrm);
     double GetGap() { return LwpTools::ConvertFromUnitsToMetric(m_nGap); }
 
@@ -260,7 +258,6 @@ class LwpJoinStuff
 {
 public:
     LwpJoinStuff();
-    ~LwpJoinStuff();
     void Read(LwpObjectStream* pStrm);
 
 private:
diff --git a/lotuswordpro/source/filter/lwpsdwfileloader.cxx 
b/lotuswordpro/source/filter/lwpsdwfileloader.cxx
index bcdb7bb018af..1bcd963014c4 100644
--- a/lotuswordpro/source/filter/lwpsdwfileloader.cxx
+++ b/lotuswordpro/source/filter/lwpsdwfileloader.cxx
@@ -68,8 +68,6 @@ LwpSdwFileLoader::LwpSdwFileLoader(SvStream* pStream, 
LwpGraphicObject* pGraphic
     pStream->Seek(0);
 }
 
-LwpSdwFileLoader::~LwpSdwFileLoader() {}
-
 /**
  * @descr   entry of lwp-drawing objects.
  * @param   pDrawObjVector   a container which will contains the created 
drawing object of XF-Model.
diff --git a/lotuswordpro/source/filter/lwpsdwfileloader.hxx 
b/lotuswordpro/source/filter/lwpsdwfileloader.hxx
index 8801394870b6..9fa056684b1a 100644
--- a/lotuswordpro/source/filter/lwpsdwfileloader.hxx
+++ b/lotuswordpro/source/filter/lwpsdwfileloader.hxx
@@ -75,7 +75,6 @@ private:
 
 public:
     LwpSdwFileLoader(SvStream* pStream, LwpGraphicObject* pGraphicObj);
-    ~LwpSdwFileLoader();
 
 public:
     void CreateDrawObjects(std::vector<rtl::Reference<XFFrame>>* 
pDrawObjVector);
diff --git a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx 
b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx
index 916531a8d624..db51eb39e035 100644
--- a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx
+++ b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.cxx
@@ -72,10 +72,6 @@ LwpSdwGroupLoaderV0102::LwpSdwGroupLoaderV0102(SvStream* 
pStream, LwpGraphicObje
 {
 }
 
-LwpSdwGroupLoaderV0102::~LwpSdwGroupLoaderV0102()
-{
-}
-
 /**
  * @descr   entry of lwp-drawing objects. the function begins to parse the 
sdw-drawing bento stream and create
  *      the corresponding drawing objects.
diff --git a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx 
b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx
index d9d63e8424b3..238ee8533805 100644
--- a/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx
+++ b/lotuswordpro/source/filter/lwpsdwgrouploaderv0102.hxx
@@ -79,7 +79,6 @@ private:
 
 public:
     LwpSdwGroupLoaderV0102(SvStream* pStream, LwpGraphicObject* pGraphicObj);
-    ~LwpSdwGroupLoaderV0102();
 
 public:
     void BeginDrawObjects(std::vector<rtl::Reference<XFFrame>>* 
pDrawObjVector);
diff --git a/oox/inc/drawingml/chart/plotareamodel.hxx 
b/oox/inc/drawingml/chart/plotareamodel.hxx
index eea7d14d89a9..ad7a2495b714 100644
--- a/oox/inc/drawingml/chart/plotareamodel.hxx
+++ b/oox/inc/drawingml/chart/plotareamodel.hxx
@@ -37,7 +37,6 @@ struct View3DModel
     bool                mbRightAngled;      /// True = right-angled axes in 3D 
view.
 
     explicit            View3DModel(bool bMSO2007Doc);
-                        ~View3DModel();
 };
 
 struct WallFloorModel
@@ -58,7 +57,6 @@ struct DataTableModel
     bool                mbShowVBorder;      /// Show Vertical Border
     bool                mbShowOutline;      /// Show outline
     explicit            DataTableModel();
-                        ~DataTableModel();
 };
 
 struct PlotAreaModel
diff --git a/oox/inc/drawingml/chart/seriesmodel.hxx 
b/oox/inc/drawingml/chart/seriesmodel.hxx
index 460293a5feee..34656a6daf4a 100644
--- a/oox/inc/drawingml/chart/seriesmodel.hxx
+++ b/oox/inc/drawingml/chart/seriesmodel.hxx
@@ -92,7 +92,6 @@ struct PictureOptionsModel
     bool                mbApplyToEnd;       /// True = draw picture at 
top/bottom side of 3D data points.
 
     explicit            PictureOptionsModel(bool bMSO2007Doc);
-                        ~PictureOptionsModel();
 };
 
 struct ErrorBarModel
diff --git a/oox/inc/drawingml/chart/titlemodel.hxx 
b/oox/inc/drawingml/chart/titlemodel.hxx
index dd5b6756e757..3aea5b445b15 100644
--- a/oox/inc/drawingml/chart/titlemodel.hxx
+++ b/oox/inc/drawingml/chart/titlemodel.hxx
@@ -61,7 +61,6 @@ struct LegendEntryModel
     bool                mbLabelDeleted;     /// True = legend label deleted.
 
                         LegendEntryModel();
-                        ~LegendEntryModel();
 };
 
 struct LegendModel
diff --git a/oox/source/drawingml/chart/modelbase.cxx 
b/oox/source/drawingml/chart/modelbase.cxx
index feb5b9aed251..b897d9306d76 100644
--- a/oox/source/drawingml/chart/modelbase.cxx
+++ b/oox/source/drawingml/chart/modelbase.cxx
@@ -49,10 +49,6 @@ LayoutModel::LayoutModel() :
 {
 }
 
-LayoutModel::~LayoutModel()
-{
-}
-
 } // namespace oox::drawingml::chart
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/oox/source/drawingml/chart/plotareamodel.cxx 
b/oox/source/drawingml/chart/plotareamodel.cxx
index c5e403a2453a..ba949572a950 100644
--- a/oox/source/drawingml/chart/plotareamodel.cxx
+++ b/oox/source/drawingml/chart/plotareamodel.cxx
@@ -30,10 +30,6 @@ View3DModel::View3DModel(bool bMSO2007Doc) :
 {
 }
 
-View3DModel::~View3DModel()
-{
-}
-
 WallFloorModel::WallFloorModel()
 {
 }
@@ -49,10 +45,6 @@ DataTableModel::DataTableModel() :
 {
 }
 
-DataTableModel::~DataTableModel()
-{
-}
-
 PlotAreaModel::PlotAreaModel()
 {
     mxShapeProp.create().getFillProperties().moFillType = XML_noFill;
diff --git a/oox/source/drawingml/chart/seriesmodel.cxx 
b/oox/source/drawingml/chart/seriesmodel.cxx
index 4ad9b2593af4..95b0deb225e7 100644
--- a/oox/source/drawingml/chart/seriesmodel.cxx
+++ b/oox/source/drawingml/chart/seriesmodel.cxx
@@ -62,10 +62,6 @@ PictureOptionsModel::PictureOptionsModel(bool bMSO2007Doc) :
 {
 }
 
-PictureOptionsModel::~PictureOptionsModel()
-{
-}
-
 ErrorBarModel::ErrorBarModel(bool bMSO2007Doc) :
     mfValue( 0.0 ),
     mnDirection( XML_y ),
diff --git a/oox/source/drawingml/chart/titlemodel.cxx 
b/oox/source/drawingml/chart/titlemodel.cxx
index f28520573904..0bbaa7ee68e6 100644
--- a/oox/source/drawingml/chart/titlemodel.cxx
+++ b/oox/source/drawingml/chart/titlemodel.cxx
@@ -46,10 +46,6 @@ LegendEntryModel::LegendEntryModel() :
 {
 }
 
-LegendEntryModel::~LegendEntryModel()
-{
-}
-
 LegendModel::LegendModel() :
     mnPosition( XML_r ),
     mbOverlay( false )
diff --git a/package/inc/CRC32.hxx b/package/inc/CRC32.hxx
index 72243d0d8342..a2ca1b435e0e 100644
--- a/package/inc/CRC32.hxx
+++ b/package/inc/CRC32.hxx
@@ -30,7 +30,6 @@ class CRC32 final
     sal_uInt32 nCRC;
 public:
     CRC32();
-    ~CRC32();
 
     /// @throws css::uno::RuntimeException
     sal_Int64 updateStream (css::uno::Reference < css::io::XInputStream > 
const & xStream);
diff --git a/package/source/zipapi/CRC32.cxx b/package/source/zipapi/CRC32.cxx
index 2440630db856..bd06822486b3 100644
--- a/package/source/zipapi/CRC32.cxx
+++ b/package/source/zipapi/CRC32.cxx
@@ -32,9 +32,6 @@ CRC32::CRC32()
 : nCRC(0)
 {
 }
-CRC32::~CRC32()
-{
-}
 void CRC32::reset()
 {
     nCRC=0;
diff --git a/sc/inc/compressedarray.hxx b/sc/inc/compressedarray.hxx
index d10db1269b6a..0287f247382f 100644
--- a/sc/inc/compressedarray.hxx
+++ b/sc/inc/compressedarray.hxx
@@ -72,7 +72,6 @@ public:
     /** Construct with nMaxAccess=MAXROW, for example. */
                                 ScCompressedArray( A nMaxAccess,
                                         const D& rValue );
-                                ~ScCompressedArray();
     void                        Reset( const D& rValue );
     void                        SetValue( A nPos, const D& rValue );
     void                        SetValue( A nStart, A nEnd, const D& rValue );
diff --git a/sc/inc/dpoutputgeometry.hxx b/sc/inc/dpoutputgeometry.hxx
index 392819258aa4..bf6c4377a351 100644
--- a/sc/inc/dpoutputgeometry.hxx
+++ b/sc/inc/dpoutputgeometry.hxx
@@ -29,7 +29,6 @@ public:
 
     ScDPOutputGeometry() = delete;
     ScDPOutputGeometry(const ScRange& rOutRange, bool bShowFilter);
-    ~ScDPOutputGeometry();
 
     /**
      * @param nCount number of row fields.
diff --git a/sc/inc/dptabres.hxx b/sc/inc/dptabres.hxx
index da7026e4f913..3c92fa38871b 100644
--- a/sc/inc/dptabres.hxx
+++ b/sc/inc/dptabres.hxx
@@ -252,7 +252,6 @@ private:
 public:
     LateInitParams( const ::std::vector<ScDPDimension*>& ppDim, const 
::std::vector<ScDPLevel*>& ppLev,
         bool bRow);
-    ~LateInitParams();
 
     void SetInitChild( bool b ) { mbInitChild = b; }
     void SetInitAllChildren( bool b ) { mbAllChildren = b; }
diff --git a/sc/inc/pagepar.hxx b/sc/inc/pagepar.hxx
index 769f82191faa..7961d5d36788 100644
--- a/sc/inc/pagepar.hxx
+++ b/sc/inc/pagepar.hxx
@@ -47,7 +47,6 @@ struct ScPageTableParam
     sal_uInt16  nFirstPageNo;
 
     ScPageTableParam();
-    ~ScPageTableParam();
 
     void                Reset       ();
 };
@@ -60,7 +59,6 @@ struct ScPageAreaParam
     ScRange aPrintArea;
 
     ScPageAreaParam();
-    ~ScPageAreaParam();
 
     void                Reset       ();
 };
diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx
index 0ad96d4319fd..e7d91a5cad97 100644
--- a/sc/inc/table.hxx
+++ b/sc/inc/table.hxx
@@ -1336,7 +1336,6 @@ private:
 
     public:
         explicit VisibleDataCellIterator(const ScDocument& rDoc, 
ScFlatBoolRowSegments& rRowSegs, ScColumn& rColumn);
-        ~VisibleDataCellIterator();
 
         /**
          * Set the start row position.  In case there is not visible data cell
diff --git a/sc/source/core/data/compressedarray.cxx 
b/sc/source/core/data/compressedarray.cxx
index e585bed5a074..793b43b43a3b 100644
--- a/sc/source/core/data/compressedarray.cxx
+++ b/sc/source/core/data/compressedarray.cxx
@@ -31,11 +31,6 @@ ScCompressedArray<A,D>::ScCompressedArray( A nMaxAccessP, 
const D& rValue )
     pData[0].nEnd = nMaxAccess;
 }
 
-template< typename A, typename D >
-ScCompressedArray<A,D>::~ScCompressedArray()
-{
-}
-
 template< typename A, typename D >
 size_t ScCompressedArray<A,D>::Search( A nAccess ) const
 {
diff --git a/sc/source/core/data/dpoutputgeometry.cxx 
b/sc/source/core/data/dpoutputgeometry.cxx
index 427bcf2326f3..0c5307258c9b 100644
--- a/sc/source/core/data/dpoutputgeometry.cxx
+++ b/sc/source/core/data/dpoutputgeometry.cxx
@@ -37,10 +37,6 @@ ScDPOutputGeometry::ScDPOutputGeometry(const ScRange& 
rOutRange, bool bShowFilte
 {
 }
 
-ScDPOutputGeometry::~ScDPOutputGeometry()
-{
-}
-
 void ScDPOutputGeometry::setRowFieldCount(sal_uInt32 nCount)
 {
     mnRowFields = nCount;
diff --git a/sc/source/core/data/dptabres.cxx b/sc/source/core/data/dptabres.cxx
index e49fbd365b44..c29648d95d8b 100644
--- a/sc/source/core/data/dptabres.cxx
+++ b/sc/source/core/data/dptabres.cxx
@@ -4064,10 +4064,6 @@ LateInitParams::LateInitParams(
 {
 }
 
-LateInitParams::~LateInitParams()
-{
-}
-
 bool LateInitParams::IsEnd( size_t nPos ) const
 {
     return nPos >= mppDim.size();
diff --git a/sc/source/core/data/pagepar.cxx b/sc/source/core/data/pagepar.cxx
index 35a270e39391..7e996fc64b9c 100644
--- a/sc/source/core/data/pagepar.cxx
+++ b/sc/source/core/data/pagepar.cxx
@@ -26,10 +26,6 @@ ScPageTableParam::ScPageTableParam()
     Reset();
 }
 
-ScPageTableParam::~ScPageTableParam()
-{
-}
-
 void ScPageTableParam::Reset()
 {
     bCellContent = true;
@@ -49,10 +45,6 @@ ScPageAreaParam::ScPageAreaParam()
     Reset();
 }
 
-ScPageAreaParam::~ScPageAreaParam()
-{
-}
-
 void ScPageAreaParam::Reset()
 {
     bPrintArea = bRepeatRow = bRepeatCol = false;
diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index f48f47ca8a16..51f6d35710a7 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -2288,10 +2288,6 @@ 
ScTable::VisibleDataCellIterator::VisibleDataCellIterator(const ScDocument& rDoc
 {
 }
 
-ScTable::VisibleDataCellIterator::~VisibleDataCellIterator()
-{
-}
-
 ScRefCellValue ScTable::VisibleDataCellIterator::reset(SCROW nRow)
 {
     if (nRow > mrDocument.MaxRow())
diff --git a/sc/source/filter/xml/XMLExportDDELinks.cxx 
b/sc/source/filter/xml/XMLExportDDELinks.cxx
index f227ab91fce6..795f47a668d1 100644
--- a/sc/source/filter/xml/XMLExportDDELinks.cxx
+++ b/sc/source/filter/xml/XMLExportDDELinks.cxx
@@ -38,10 +38,6 @@ ScXMLExportDDELinks::ScXMLExportDDELinks(ScXMLExport& 
rTempExport)
 {
 }
 
-ScXMLExportDDELinks::~ScXMLExportDDELinks()
-{
-}
-
 void ScXMLExportDDELinks::WriteCell(const ScMatrixValue& aVal, sal_Int32 
nRepeat)
 {
     bool bString = ScMatrix::IsNonValueType(aVal.nType);
diff --git a/sc/source/filter/xml/XMLExportDDELinks.hxx 
b/sc/source/filter/xml/XMLExportDDELinks.hxx
index 0e84b305c96c..560f495877e0 100644
--- a/sc/source/filter/xml/XMLExportDDELinks.hxx
+++ b/sc/source/filter/xml/XMLExportDDELinks.hxx
@@ -35,7 +35,6 @@ class ScXMLExportDDELinks
     void                WriteTable(const sal_Int32 nPos);
 public:
     explicit ScXMLExportDDELinks(ScXMLExport& rExport);
-    ~ScXMLExportDDELinks();
     void WriteDDELinks(const css::uno::Reference < 
css::sheet::XSpreadsheetDocument >& xSpreadDoc);
 };
 
diff --git a/sc/source/filter/xml/XMLExportDataPilot.cxx 
b/sc/source/filter/xml/XMLExportDataPilot.cxx
index 56c818c299af..7f0e7b4b4fa8 100644
--- a/sc/source/filter/xml/XMLExportDataPilot.cxx
+++ b/sc/source/filter/xml/XMLExportDataPilot.cxx
@@ -62,10 +62,6 @@ ScXMLExportDataPilot::ScXMLExportDataPilot(ScXMLExport& 
rTempExport)
 {
 }
 
-ScXMLExportDataPilot::~ScXMLExportDataPilot()
-{
-}
-
 OUString ScXMLExportDataPilot::getDPOperatorXML(
     const ScQueryOp aFilterOperator, const utl::SearchParam::SearchType 
eSearchType)
 {
diff --git a/sc/source/filter/xml/XMLExportDataPilot.hxx 
b/sc/source/filter/xml/XMLExportDataPilot.hxx
index e8d468cc1431..dcf4ff34443f 100644
--- a/sc/source/filter/xml/XMLExportDataPilot.hxx
+++ b/sc/source/filter/xml/XMLExportDataPilot.hxx
@@ -68,7 +68,6 @@ class ScXMLExportDataPilot
 
 public:
     explicit ScXMLExportDataPilot(ScXMLExport& rExport);
-    ~ScXMLExportDataPilot();
     void WriteDataPilots();
 };
 
diff --git a/sc/source/filter/xml/XMLExportDatabaseRanges.cxx 
b/sc/source/filter/xml/XMLExportDatabaseRanges.cxx
index 1be1f696eead..61c01d236bfa 100644
--- a/sc/source/filter/xml/XMLExportDatabaseRanges.cxx
+++ b/sc/source/filter/xml/XMLExportDatabaseRanges.cxx
@@ -124,10 +124,6 @@ 
ScXMLExportDatabaseRanges::ScXMLExportDatabaseRanges(ScXMLExport& rTempExport)
 {
 }
 
-ScXMLExportDatabaseRanges::~ScXMLExportDatabaseRanges()
-{
-}
-
 ScMyEmptyDatabaseRangesContainer 
ScXMLExportDatabaseRanges::GetEmptyDatabaseRanges()
 {
     ScMyEmptyDatabaseRangesContainer aSkipRanges;
diff --git a/sc/source/filter/xml/XMLExportDatabaseRanges.hxx 
b/sc/source/filter/xml/XMLExportDatabaseRanges.hxx
index a89e97b9b795..ed8f79497526 100644
--- a/sc/source/filter/xml/XMLExportDatabaseRanges.hxx
+++ b/sc/source/filter/xml/XMLExportDatabaseRanges.hxx
@@ -36,7 +36,6 @@ class ScXMLExportDatabaseRanges
 
 public:
     explicit ScXMLExportDatabaseRanges(ScXMLExport& rExport);
-    ~ScXMLExportDatabaseRanges();
     ScMyEmptyDatabaseRangesContainer GetEmptyDatabaseRanges();
     void WriteDatabaseRanges();
 };
diff --git a/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx 
b/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx
index 46f58599e131..be843112859a 100644
--- a/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx
+++ b/sc/source/ui/StatisticsDialogs/TableFillingAndNavigationTools.cxx
@@ -238,9 +238,6 @@ DataCellIterator::DataCellIterator(const ScRange& 
aInputRange, bool aByColumn)
         mRow = aInputRange.aStart.Row();
 }
 
-DataCellIterator::~DataCellIterator()
-{}
-
 bool DataCellIterator::hasNext() const
 {
     if(mByColumn)
diff --git a/sc/source/ui/dbgui/foptmgr.cxx b/sc/source/ui/dbgui/foptmgr.cxx
index 9ebcf5304fb7..decaa622ba63 100644
--- a/sc/source/ui/dbgui/foptmgr.cxx
+++ b/sc/source/ui/dbgui/foptmgr.cxx
@@ -66,10 +66,6 @@ ScFilterOptionsMgr::ScFilterOptionsMgr(
     Init();
 }
 
-ScFilterOptionsMgr::~ScFilterOptionsMgr()
-{
-}
-
 void ScFilterOptionsMgr::Init()
 {
 //moggi:TODO
diff --git a/sc/source/ui/inc/TableFillingAndNavigationTools.hxx 
b/sc/source/ui/inc/TableFillingAndNavigationTools.hxx
index 1ca5c173cac2..4540559116d7 100644
--- a/sc/source/ui/inc/TableFillingAndNavigationTools.hxx
+++ b/sc/source/ui/inc/TableFillingAndNavigationTools.hxx
@@ -98,7 +98,6 @@ private:
 
 public:
     DataCellIterator(const ScRange& aInputRange, bool aByColumn);
-    ~DataCellIterator();
 
     bool hasNext() const;
     ScAddress get();
diff --git a/sc/source/ui/inc/conflictsdlg.hxx 
b/sc/source/ui/inc/conflictsdlg.hxx
index b22fa598c91b..f0ab643e0533 100644
--- a/sc/source/ui/inc/conflictsdlg.hxx
+++ b/sc/source/ui/inc/conflictsdlg.hxx
@@ -83,7 +83,6 @@ private:
 public:
                             ScConflictsFinder( ScChangeTrack* pTrack, 
sal_uLong nStartShared, sal_uLong nEndShared,
                                 sal_uLong nStartOwn, sal_uLong nEndOwn, 
ScConflictsList& rConflictsList );
-                            ~ScConflictsFinder();
 
     bool                    Find();
 };
@@ -97,7 +96,6 @@ private:
 
 public:
                         ScConflictsResolver( ScChangeTrack* pTrack, 
ScConflictsList& rConflictsList );
-                        ~ScConflictsResolver();
 
     void                HandleAction( ScChangeAction* pAction, bool 
bIsSharedAction,
                             bool bHandleContentAction, bool 
bHandleNonContentAction );
diff --git a/sc/source/ui/inc/foptmgr.hxx b/sc/source/ui/inc/foptmgr.hxx
index 2a4fcd145623..661feac98fb2 100644
--- a/sc/source/ui/inc/foptmgr.hxx
+++ b/sc/source/ui/inc/foptmgr.hxx
@@ -48,7 +48,6 @@ public:
                      weld::Label* refFtDbAreaLabel,
                      weld::Label* refFtDbArea,
                      const OUString& refStrUndefined );
-    ~ScFilterOptionsMgr();
     bool    VerifyPosStr ( const OUString& rPosStr ) const;
 
 private:
diff --git a/sc/source/ui/miscdlgs/conflictsdlg.cxx 
b/sc/source/ui/miscdlgs/conflictsdlg.cxx
index bcd76e211ec8..3a48325aa52c 100644
--- a/sc/source/ui/miscdlgs/conflictsdlg.cxx
+++ b/sc/source/ui/miscdlgs/conflictsdlg.cxx
@@ -129,10 +129,6 @@ ScConflictsFinder::ScConflictsFinder( ScChangeTrack* 
pTrack, sal_uLong nStartSha
 {
 }
 
-ScConflictsFinder::~ScConflictsFinder()
-{
-}
-
 bool ScConflictsFinder::DoActionsIntersect( const ScChangeAction* pAction1, 
const ScChangeAction* pAction2 )
 {
     return pAction1 && pAction2 && pAction1->GetBigRange().Intersects( 
pAction2->GetBigRange() );
@@ -241,10 +237,6 @@ ScConflictsResolver::ScConflictsResolver( ScChangeTrack* 
pTrack, ScConflictsList
     OSL_ENSURE( mpTrack, "ScConflictsResolver CTOR: mpTrack is null!" );
 }
 
-ScConflictsResolver::~ScConflictsResolver()
-{
-}
-
 void ScConflictsResolver::HandleAction( ScChangeAction* pAction, bool 
bIsSharedAction,
     bool bHandleContentAction, bool bHandleNonContentAction )
 {
diff --git a/sd/source/ui/slidesorter/controller/SlsProperties.cxx 
b/sd/source/ui/slidesorter/controller/SlsProperties.cxx
index 0d89b205a09a..f1152a3735e6 100644
--- a/sd/source/ui/slidesorter/controller/SlsProperties.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsProperties.cxx
@@ -38,10 +38,6 @@ Properties::Properties()
 {
 }
 
-Properties::~Properties()
-{
-}
-
 void Properties::HandleDataChangeEvent()
 {
     maBackgroundColor = 
Application::GetSettings().GetStyleSettings().GetWindowColor();
diff --git a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx 
b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
index 4b611859078a..52e05557e903 100644
--- a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
+++ b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx
@@ -117,10 +117,6 @@ SlotManager::SlotManager (SlideSorter& rSlideSorter)
 {
 }
 
-SlotManager::~SlotManager()
-{
-}
-
 void SlotManager::FuTemporary (SfxRequest& rRequest)
 {
     SdDrawDocument* pDocument = mrSlideSorter.GetModel().GetDocument();
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsProperties.hxx 
b/sd/source/ui/slidesorter/inc/controller/SlsProperties.hxx
index bda6b64ab8a3..344ac67f38bd 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsProperties.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsProperties.hxx
@@ -29,7 +29,6 @@ class Properties
 {
 public:
     Properties();
-    ~Properties();
 
     /** Call this method after receiving a VclEventId::ApplicationDataChanged
         event.
diff --git a/sd/source/ui/slidesorter/inc/controller/SlsSlotManager.hxx 
b/sd/source/ui/slidesorter/inc/controller/SlsSlotManager.hxx
index c56f2e0b8e9c..57de8422ac40 100644
--- a/sd/source/ui/slidesorter/inc/controller/SlsSlotManager.hxx
+++ b/sd/source/ui/slidesorter/inc/controller/SlsSlotManager.hxx
@@ -46,8 +46,6 @@ public:
     */
     SlotManager(SlideSorter& rSlideSorter);
 
-    ~SlotManager();
-
     void FuTemporary(SfxRequest& rRequest);
     void FuPermanent(SfxRequest& rRequest);
     void FuSupport(SfxRequest& rRequest);
diff --git a/sd/source/ui/slidesorter/inc/model/SlsVisualState.hxx 
b/sd/source/ui/slidesorter/inc/model/SlsVisualState.hxx
index 7349ec0bb35e..89eae16ca53f 100644
--- a/sd/source/ui/slidesorter/inc/model/SlsVisualState.hxx
+++ b/sd/source/ui/slidesorter/inc/model/SlsVisualState.hxx
@@ -32,7 +32,6 @@ class VisualState
 {
 public:
     VisualState(const sal_Int32 nPageId);
-    ~VisualState();
 
     const Point& GetLocationOffset() const { return maLocationOffset; }
     void SetLocationOffset(const Point& rPoint);
diff --git a/sd/source/ui/slidesorter/model/SlsVisualState.cxx 
b/sd/source/ui/slidesorter/model/SlsVisualState.cxx
index b342e1aeee22..3e16823ff81d 100644
--- a/sd/source/ui/slidesorter/model/SlsVisualState.cxx
+++ b/sd/source/ui/slidesorter/model/SlsVisualState.cxx
@@ -27,8 +27,6 @@ VisualState::VisualState(const sal_Int32 nPageId)
 {
 }
 
-VisualState::~VisualState() {}
-
 void VisualState::SetLocationOffset(const Point& rOffset)
 {
     if (maLocationOffset != rOffset)
diff --git a/svl/source/items/itemiter.cxx b/svl/source/items/itemiter.cxx
index 3e4b927d2af9..bd5890e07c4a 100644
--- a/svl/source/items/itemiter.cxx
+++ b/svl/source/items/itemiter.cxx
@@ -45,8 +45,6 @@ SfxItemIter::SfxItemIter(const SfxItemSet& rItemSet)
     m_nCurrent = m_nStart;
 }
 
-SfxItemIter::~SfxItemIter() {}
-
 // Precondition : m_nCurrent < m_nEnd
 const SfxPoolItem* SfxItemIter::ImplNextItem()
 {
diff --git a/svx/source/dialog/dlgctl3d.cxx b/svx/source/dialog/dlgctl3d.cxx
index 1231e1d4eedf..792485a06048 100644
--- a/svx/source/dialog/dlgctl3d.cxx
+++ b/svx/source/dialog/dlgctl3d.cxx
@@ -964,10 +964,6 @@ void SvxLightCtl3D::Init()
     CheckSelection();
 }
 
-SvxLightCtl3D::~SvxLightCtl3D()
-{
-}
-
 void SvxLightCtl3D::CheckSelection()
 {
     const bool bSelectionValid(mrLightControl.IsSelectionValid() || 
mrLightControl.IsGeometrySelected());
diff --git a/svx/source/engine3d/objfac3d.cxx b/svx/source/engine3d/objfac3d.cxx
index 160406c17405..4153ffab55fd 100644
--- a/svx/source/engine3d/objfac3d.cxx
+++ b/svx/source/engine3d/objfac3d.cxx
@@ -38,10 +38,6 @@ E3dObjFactory::E3dObjFactory()
     }
 }
 
-E3dObjFactory::~E3dObjFactory()
-{
-}
-
 // Generate chart internal objects
 
 IMPL_STATIC_LINK( E3dObjFactory, MakeObject, SdrObjCreatorParams, aParams, 
SdrObject* )
diff --git a/svx/source/form/fmobjfac.cxx b/svx/source/form/fmobjfac.cxx
index 6ef433414af0..7e6ffacc6229 100644
--- a/svx/source/form/fmobjfac.cxx
+++ b/svx/source/form/fmobjfac.cxx
@@ -82,10 +82,6 @@ FmFormObjFactory::FmFormObjFactory()
     bInit = true;
 }
 
-FmFormObjFactory::~FmFormObjFactory()
-{
-}
-
 // create css::form::Form objects
 namespace
 {
diff --git a/svx/source/gallery2/codec.cxx b/svx/source/gallery2/codec.cxx
index 5adef9b37841..062c60dbecc6 100644
--- a/svx/source/gallery2/codec.cxx
+++ b/svx/source/gallery2/codec.cxx
@@ -29,10 +29,6 @@ GalleryCodec::GalleryCodec( SvStream& rIOStm ) :
 {
 }
 
-GalleryCodec::~GalleryCodec()
-{
-}
-
 bool GalleryCodec::IsCoded( SvStream& rStm, sal_uInt32& rVersion )
 {
     const sal_uInt64   nPos = rStm.Tell();
diff --git a/svx/source/gallery2/codec.hxx b/svx/source/gallery2/codec.hxx
index 8d8196d70d0e..726b80157b5d 100644
--- a/svx/source/gallery2/codec.hxx
+++ b/svx/source/gallery2/codec.hxx
@@ -30,7 +30,6 @@ private:
 
 public:
     explicit GalleryCodec(SvStream& rIOStm);
-    ~GalleryCodec();
 
     void Write(SvStream& rStmToWrite);
     void Read(SvStream& rStmToRead);
diff --git a/svx/source/svdraw/svdview.cxx b/svx/source/svdraw/svdview.cxx
index d66094def531..6179451b9596 100644
--- a/svx/source/svdraw/svdview.cxx
+++ b/svx/source/svdraw/svdview.cxx
@@ -76,11 +76,6 @@ SdrViewEvent::SdrViewEvent()
 {
 }
 
-SdrViewEvent::~SdrViewEvent()
-{
-}
-
-
 // helper class for all D&D overlays
 
 void SdrDropMarkerOverlay::ImplCreateOverlays(
diff --git a/svx/source/tbxctrls/tbcontrl.cxx b/svx/source/tbxctrls/tbcontrl.cxx
index e7f168fc9340..d9971a2e5f21 100644
--- a/svx/source/tbxctrls/tbcontrl.cxx
+++ b/svx/source/tbxctrls/tbcontrl.cxx
@@ -2123,10 +2123,6 @@ ColorStatus::ColorStatus() :
 {
 }
 
-ColorStatus::~ColorStatus()
-{
-}
-
 void ColorStatus::statusChanged( const css::frame::FeatureStateEvent& rEvent )
 {
     Color aColor( COL_TRANSPARENT );
diff --git a/sw/inc/unomap.hxx b/sw/inc/unomap.hxx
index 413adfaf7fc3..a9a78d550285 100644
--- a/sw/inc/unomap.hxx
+++ b/sw/inc/unomap.hxx
@@ -319,7 +319,6 @@ class SwUnoPropertyMapProvider
 
 public:
     SwUnoPropertyMapProvider();
-    ~SwUnoPropertyMapProvider();
 
     const SfxItemPropertyMapEntry*  GetPropertyMapEntries(sal_uInt16 
PropertyId);
     const SfxItemPropertySet*       GetPropertySet( sal_uInt16 PropertyId );
diff --git a/sw/source/core/access/accselectionhelper.cxx 
b/sw/source/core/access/accselectionhelper.cxx
index 08a4886044c1..3372f434c5a1 100644
--- a/sw/source/core/access/accselectionhelper.cxx
+++ b/sw/source/core/access/accselectionhelper.cxx
@@ -51,10 +51,6 @@ SwAccessibleSelectionHelper::SwAccessibleSelectionHelper(
 {
 }
 
-SwAccessibleSelectionHelper::~SwAccessibleSelectionHelper()
-{
-}
-
 SwFEShell* SwAccessibleSelectionHelper::GetFEShell()
 {
     OSL_ENSURE( m_rContext.GetMap() != nullptr, "no map?" );
diff --git a/sw/source/core/access/accselectionhelper.hxx 
b/sw/source/core/access/accselectionhelper.hxx
index 10d78d996b1e..ceaa2a7842c3 100644
--- a/sw/source/core/access/accselectionhelper.hxx
+++ b/sw/source/core/access/accselectionhelper.hxx
@@ -41,7 +41,6 @@ class SwAccessibleSelectionHelper
 
 public:
     SwAccessibleSelectionHelper( SwAccessibleContext& rContext );
-    ~SwAccessibleSelectionHelper();
 
     // XAccessibleSelection
 
diff --git a/sw/source/core/inc/environmentofanchoredobject.hxx 
b/sw/source/core/inc/environmentofanchoredobject.hxx
index 23965035eb6a..610bd934f893 100644
--- a/sw/source/core/inc/environmentofanchoredobject.hxx
+++ b/sw/source/core/inc/environmentofanchoredobject.hxx
@@ -39,10 +39,6 @@ public:
     */
     SwEnvironmentOfAnchoredObject(const bool _bFollowTextFlow);
 
-    /** destructor
-    */
-    ~SwEnvironmentOfAnchoredObject();
-
     /** determine environment layout frame for possible horizontal object
         positions respectively for alignment to 'page areas'
 
diff --git a/sw/source/core/objectpositioning/environmentofanchoredobject.cxx 
b/sw/source/core/objectpositioning/environmentofanchoredobject.cxx
index 9588e2b4ac2d..e6529be386b9 100644
--- a/sw/source/core/objectpositioning/environmentofanchoredobject.cxx
+++ b/sw/source/core/objectpositioning/environmentofanchoredobject.cxx
@@ -30,9 +30,6 @@ SwEnvironmentOfAnchoredObject::SwEnvironmentOfAnchoredObject(
     : mbFollowTextFlow( _bFollowTextFlow )
 {}
 
-SwEnvironmentOfAnchoredObject::~SwEnvironmentOfAnchoredObject()
-{}
-
 /** determine environment layout frame for possible horizontal object 
positions */
 const SwLayoutFrame& 
SwEnvironmentOfAnchoredObject::GetHoriEnvironmentLayoutFrame(
                                             const SwFrame& _rHoriOrientFrame ) 
const
diff --git a/sw/source/core/unocore/unomap1.cxx 
b/sw/source/core/unocore/unomap1.cxx
index 4c2e43296529..cc27bdc8b549 100644
--- a/sw/source/core/unocore/unomap1.cxx
+++ b/sw/source/core/unocore/unomap1.cxx
@@ -95,10 +95,6 @@ SwUnoPropertyMapProvider::SwUnoPropertyMapProvider()
     }
 }
 
-SwUnoPropertyMapProvider::~SwUnoPropertyMapProvider()
-{
-}
-
 const SfxItemPropertyMapEntry*  
SwUnoPropertyMapProvider::GetTextCursorPropertyMap()
 {
     static SfxItemPropertyMapEntry const aCharAndParaMap_Impl[] =
diff --git a/sw/source/filter/ww8/WW8TableInfo.cxx 
b/sw/source/filter/ww8/WW8TableInfo.cxx
index 907e4131cec0..fd93238ec12c 100644
--- a/sw/source/filter/ww8/WW8TableInfo.cxx
+++ b/sw/source/filter/ww8/WW8TableInfo.cxx
@@ -49,10 +49,6 @@ 
WW8TableNodeInfoInner::WW8TableNodeInfoInner(WW8TableNodeInfo * pParent)
 {
 }
 
-WW8TableNodeInfoInner::~WW8TableNodeInfoInner()
-{
-}
-
 void WW8TableNodeInfoInner::setDepth(sal_uInt32 nDepth)
 {
     mnDepth = nDepth;
diff --git a/sw/source/filter/ww8/WW8TableInfo.hxx 
b/sw/source/filter/ww8/WW8TableInfo.hxx
index 5b3294cd506e..bae0e69f5821 100644
--- a/sw/source/filter/ww8/WW8TableInfo.hxx
+++ b/sw/source/filter/ww8/WW8TableInfo.hxx
@@ -70,7 +70,6 @@ public:
     typedef std::shared_ptr<WW8TableNodeInfoInner> Pointer_t;
 
     explicit WW8TableNodeInfoInner(WW8TableNodeInfo * pParent);
-    ~WW8TableNodeInfoInner();
 
     void setDepth(sal_uInt32 nDepth);
     void setCell(sal_uInt32 nCell);
diff --git a/sw/source/filter/xml/xmlbrsh.cxx b/sw/source/filter/xml/xmlbrsh.cxx
index 91104d4241a6..b31dc0cfa40a 100644
--- a/sw/source/filter/xml/xmlbrsh.cxx
+++ b/sw/source/filter/xml/xmlbrsh.cxx
@@ -147,10 +147,6 @@ SwXMLBrushItemExport::SwXMLBrushItemExport( SwXMLExport& 
rExp ) :
 {
 }
 
-SwXMLBrushItemExport::~SwXMLBrushItemExport()
-{
-}
-
 void SwXMLBrushItemExport::exportXML( const SvxBrushItem& rItem )
 {
     GetExport().CheckAttrList();
diff --git a/sw/source/filter/xml/xmlbrshe.hxx 
b/sw/source/filter/xml/xmlbrshe.hxx
index a5cb76f7068e..0253a6f06891 100644
--- a/sw/source/filter/xml/xmlbrshe.hxx
+++ b/sw/source/filter/xml/xmlbrshe.hxx
@@ -31,7 +31,6 @@ class SwXMLBrushItemExport
 
 public:
     explicit SwXMLBrushItemExport(SwXMLExport& rExport);
-    ~SwXMLBrushItemExport();
 
     // core API
     void exportXML(const SvxBrushItem& rItem);
diff --git a/vcl/inc/BitmapSymmetryCheck.hxx b/vcl/inc/BitmapSymmetryCheck.hxx
index 3e79a426b94c..917b8b6d13a1 100644
--- a/vcl/inc/BitmapSymmetryCheck.hxx
+++ b/vcl/inc/BitmapSymmetryCheck.hxx
@@ -19,7 +19,6 @@ class VCL_DLLPUBLIC BitmapSymmetryCheck final
 {
 public:
     BitmapSymmetryCheck();
-    ~BitmapSymmetryCheck();
 
     static bool check(Bitmap& rBitmap);
 
diff --git a/vcl/source/bitmap/BitmapSymmetryCheck.cxx 
b/vcl/source/bitmap/BitmapSymmetryCheck.cxx
index d2e450c0337d..1bd16e815400 100644
--- a/vcl/source/bitmap/BitmapSymmetryCheck.cxx
+++ b/vcl/source/bitmap/BitmapSymmetryCheck.cxx
@@ -15,9 +15,6 @@
 BitmapSymmetryCheck::BitmapSymmetryCheck()
 {}
 
-BitmapSymmetryCheck::~BitmapSymmetryCheck()
-{}
-
 bool BitmapSymmetryCheck::check(Bitmap& rBitmap)
 {
     Bitmap::ScopedReadAccess aReadAccess(rBitmap);
diff --git a/vcl/source/filter/GraphicNativeMetadata.cxx 
b/vcl/source/filter/GraphicNativeMetadata.cxx
index 6eb60cd67374..5b11fcc7826a 100644
--- a/vcl/source/filter/GraphicNativeMetadata.cxx
+++ b/vcl/source/filter/GraphicNativeMetadata.cxx
@@ -27,8 +27,6 @@ GraphicNativeMetadata::GraphicNativeMetadata()
 {
 }
 
-GraphicNativeMetadata::~GraphicNativeMetadata() {}
-
 bool GraphicNativeMetadata::read(Graphic const& rGraphic)
 {
     GfxLink aLink = rGraphic.GetGfxLink();
diff --git a/vcl/source/filter/GraphicNativeTransform.cxx 
b/vcl/source/filter/GraphicNativeTransform.cxx
index 230e9891e7b7..f2eaefe9d05b 100644
--- a/vcl/source/filter/GraphicNativeTransform.cxx
+++ b/vcl/source/filter/GraphicNativeTransform.cxx
@@ -34,8 +34,6 @@ GraphicNativeTransform::GraphicNativeTransform(Graphic& 
rGraphic)
 {
 }
 
-GraphicNativeTransform::~GraphicNativeTransform() {}
-
 void GraphicNativeTransform::rotate(Degree10 aInputRotation)
 {
     // Rotation can be between 0 and 3600
diff --git a/vcl/source/filter/idxf/dxfreprd.cxx 
b/vcl/source/filter/idxf/dxfreprd.cxx
index 8bed6cb57b29..7124e296e303 100644
--- a/vcl/source/filter/idxf/dxfreprd.cxx
+++ b/vcl/source/filter/idxf/dxfreprd.cxx
@@ -108,11 +108,6 @@ DXFPalette::DXFPalette()
 }
 
 
-DXFPalette::~DXFPalette()
-{
-}
-
-
 void DXFPalette::SetColor(sal_uInt8 nIndex, sal_uInt8 nRed, sal_uInt8 nGreen, 
sal_uInt8 nBlue)
 {
     pRed[nIndex]=nRed;
diff --git a/vcl/source/filter/idxf/dxfreprd.hxx 
b/vcl/source/filter/idxf/dxfreprd.hxx
index 99745343ff7f..e9c6bc6530a8 100644
--- a/vcl/source/filter/idxf/dxfreprd.hxx
+++ b/vcl/source/filter/idxf/dxfreprd.hxx
@@ -52,7 +52,6 @@ class DXFPalette {
 public:
 
     DXFPalette();
-    ~DXFPalette();
 
     sal_uInt8 GetRed(sal_uInt8 nIndex) const;
     sal_uInt8 GetGreen(sal_uInt8 nIndex) const;
diff --git a/vcl/source/filter/itiff/lzwdecom.cxx 
b/vcl/source/filter/itiff/lzwdecom.cxx
index 14a7e276f4ee..0f8483708179 100644
--- a/vcl/source/filter/itiff/lzwdecom.cxx
+++ b/vcl/source/filter/itiff/lzwdecom.cxx
@@ -44,11 +44,6 @@ LZWDecompressor::LZWDecompressor()
 }
 
 
-LZWDecompressor::~LZWDecompressor()
-{
-}
-
-
 void LZWDecompressor::StartDecompression(SvStream & rIStream)
 {
     pIStream=&rIStream;
diff --git a/vcl/source/filter/itiff/lzwdecom.hxx 
b/vcl/source/filter/itiff/lzwdecom.hxx
index cd6590a6dc87..2104a4e49f5a 100644
--- a/vcl/source/filter/itiff/lzwdecom.hxx
+++ b/vcl/source/filter/itiff/lzwdecom.hxx
@@ -38,7 +38,6 @@ class LZWDecompressor
 {
 public:
     LZWDecompressor();
-    ~LZWDecompressor();
 
     void StartDecompression(SvStream& rIStream);
 
diff --git a/vcl/source/filter/jpeg/Exif.cxx b/vcl/source/filter/jpeg/Exif.cxx
index d23c6025185c..53b55f69ad4f 100644
--- a/vcl/source/filter/jpeg/Exif.cxx
+++ b/vcl/source/filter/jpeg/Exif.cxx
@@ -27,9 +27,6 @@ Exif::Exif() :
     mbExifPresent(false)
 {}
 
-Exif::~Exif()
-{}
-
 void Exif::setOrientation(exif::Orientation aOrientation) {
     maOrientation = aOrientation;
 }
diff --git a/vcl/source/filter/jpeg/Exif.hxx b/vcl/source/filter/jpeg/Exif.hxx
index c39de1b08fdf..287b7ae434cc 100644
--- a/vcl/source/filter/jpeg/Exif.hxx
+++ b/vcl/source/filter/jpeg/Exif.hxx
@@ -67,7 +67,6 @@ private:
 
 public:
     Exif();
-    ~Exif();
 
     bool hasExif() const { return mbExifPresent;}
 
diff --git a/vcl/source/filter/jpeg/JpegTransform.cxx 
b/vcl/source/filter/jpeg/JpegTransform.cxx
index b1016c022272..16c0c060bd7b 100644
--- a/vcl/source/filter/jpeg/JpegTransform.cxx
+++ b/vcl/source/filter/jpeg/JpegTransform.cxx
@@ -29,9 +29,6 @@ JpegTransform::JpegTransform(SvStream& rInputStream, 
SvStream& rOutputStream) :
     mrOutputStream ( rOutputStream )
 {}
 
-JpegTransform::~JpegTransform()
-{}
-
 void JpegTransform::perform()
 {
     Transform( &mrInputStream, &mrOutputStream, maRotate );
diff --git a/vcl/source/filter/jpeg/JpegTransform.hxx 
b/vcl/source/filter/jpeg/JpegTransform.hxx
index 682eb29b8a3f..2b5c6dfd66ce 100644
--- a/vcl/source/filter/jpeg/JpegTransform.hxx
+++ b/vcl/source/filter/jpeg/JpegTransform.hxx
@@ -30,7 +30,6 @@ class JpegTransform final
 
 public:
     JpegTransform(SvStream& rInputStream, SvStream& rOutputStream);
-    ~JpegTransform();
 
     void setRotate(Degree10 aRotate);
     void perform();
diff --git a/vcl/source/gdi/cvtgrf.cxx b/vcl/source/gdi/cvtgrf.cxx
index d14664bd047a..51fb6df10e4f 100644
--- a/vcl/source/gdi/cvtgrf.cxx
+++ b/vcl/source/gdi/cvtgrf.cxx
@@ -27,10 +27,6 @@ GraphicConverter::GraphicConverter()
 {
 }
 
-GraphicConverter::~GraphicConverter()
-{
-}
-
 ErrCode GraphicConverter::Import( SvStream& rIStm, Graphic& rGraphic, 
ConvertDataFormat nFormat )
 {
     GraphicConverter*   pCvt = ImplGetSVData()->maGDIData.mxGrfConverter.get();
diff --git a/vcl/source/gdi/mtfxmldump.cxx b/vcl/source/gdi/mtfxmldump.cxx
index f0a4d2ba0537..f6e2a0bda869 100644
--- a/vcl/source/gdi/mtfxmldump.cxx
+++ b/vcl/source/gdi/mtfxmldump.cxx
@@ -570,9 +570,6 @@ MetafileXmlDump::MetafileXmlDump()
     maFilter.fill(false);
 }
 
-MetafileXmlDump::~MetafileXmlDump()
-{}
-
 void MetafileXmlDump::filterActionType(const MetaActionType nActionType, bool 
bShouldFilter)
 {
     maFilter[nActionType] = bShouldFilter;
diff --git a/vcl/source/treelist/treelistbox.cxx 
b/vcl/source/treelist/treelistbox.cxx
index 2c48095e0f6b..9f2ebab1009b 100644
--- a/vcl/source/treelist/treelistbox.cxx
+++ b/vcl/source/treelist/treelistbox.cxx
@@ -286,11 +286,6 @@ SvLBoxTab::SvLBoxTab( const SvLBoxTab& rTab )
     nFlags = rTab.nFlags;
 }
 
-SvLBoxTab::~SvLBoxTab()
-{
-}
-
-
 tools::Long SvLBoxTab::CalcOffset( tools::Long nItemWidth, tools::Long 
nTabWidth )
 {
     tools::Long nOffset = 0;
diff --git a/xmloff/inc/TransGradientStyle.hxx 
b/xmloff/inc/TransGradientStyle.hxx
index f01ae1c19596..781969f7db93 100644
--- a/xmloff/inc/TransGradientStyle.hxx
+++ b/xmloff/inc/TransGradientStyle.hxx
@@ -37,7 +37,6 @@ class XMLTransGradientStyleImport
 
 public:
     XMLTransGradientStyleImport( SvXMLImport& rImport );
-    ~XMLTransGradientStyleImport();
 
     void importXML(
         const css::uno::Reference< css::xml::sax::XFastAttributeList >& 
xAttrList,
@@ -51,7 +50,6 @@ class XMLTransGradientStyleExport
 
 public:
     XMLTransGradientStyleExport( SvXMLExport& rExport );
-    ~XMLTransGradientStyleExport();
 
     void exportXML( const OUString& rStrName, const css::uno::Any& rValue );
 };
diff --git a/xmloff/inc/XMLBackgroundImageExport.hxx 
b/xmloff/inc/XMLBackgroundImageExport.hxx
index 1eafe86ba5ec..401df38ef263 100644
--- a/xmloff/inc/XMLBackgroundImageExport.hxx
+++ b/xmloff/inc/XMLBackgroundImageExport.hxx
@@ -38,8 +38,6 @@ public:
 
     XMLBackgroundImageExport( SvXMLExport& rExport );
 
-    ~XMLBackgroundImageExport();
-
     void exportXML( const css::uno::Any& rURL,
                     const css::uno::Any *pPos,
                     const css::uno::Any *pFilter,
diff --git a/xmloff/inc/XMLImageMapExport.hxx b/xmloff/inc/XMLImageMapExport.hxx
index ddf62bb6f394..12679b6dbb5a 100644
--- a/xmloff/inc/XMLImageMapExport.hxx
+++ b/xmloff/inc/XMLImageMapExport.hxx
@@ -39,8 +39,6 @@ class XMLImageMapExport
 public:
     XMLImageMapExport(SvXMLExport& rExport);
 
-    ~XMLImageMapExport();
-
     /**
      * Get the ImageMap object from the "ImageMap" property and subsequently
      * export the map (if present).
diff --git a/xmloff/inc/xmltabe.hxx b/xmloff/inc/xmltabe.hxx
index 0023490e299f..af2873b7656a 100644
--- a/xmloff/inc/xmltabe.hxx
+++ b/xmloff/inc/xmltabe.hxx
@@ -40,7 +40,6 @@ class SvxXMLTabStopExport final
 public:
 
     SvxXMLTabStopExport(  SvXMLExport& rExport );
-    ~SvxXMLTabStopExport();
 
     // core API
     void Export( const css::uno::Any& rAny );
diff --git a/xmloff/source/chart/SchXMLPlotAreaContext.cxx 
b/xmloff/source/chart/SchXMLPlotAreaContext.cxx
index a23a2c0dbde7..e1ca44503506 100644
--- a/xmloff/source/chart/SchXMLPlotAreaContext.cxx
+++ b/xmloff/source/chart/SchXMLPlotAreaContext.cxx
@@ -811,10 +811,6 @@ 
SchXMLPositionAttributesHelper::SchXMLPositionAttributesHelper( SvXMLImport& rIm
 {
 }
 
-SchXMLPositionAttributesHelper::~SchXMLPositionAttributesHelper()
-{
-}
-
 bool SchXMLPositionAttributesHelper::hasPosSize() const
 {
     return (m_bHasPositionX && m_bHasPositionY) && (m_bHasSizeWidth && 
m_bHasSizeHeight);
diff --git a/xmloff/source/chart/SchXMLPlotAreaContext.hxx 
b/xmloff/source/chart/SchXMLPlotAreaContext.hxx
index f80ee6f4840a..a1de29e187e1 100644
--- a/xmloff/source/chart/SchXMLPlotAreaContext.hxx
+++ b/xmloff/source/chart/SchXMLPlotAreaContext.hxx
@@ -57,7 +57,6 @@ class SchXMLPositionAttributesHelper
 {
 public:
     explicit SchXMLPositionAttributesHelper( SvXMLImport& rImporter );
-    ~SchXMLPositionAttributesHelper();
 
     void readPositioningAttribute( sal_Int32 nAttributeToken, std::string_view 
rValue );
     void readAutomaticPositioningProperties( XMLPropStyleContext const * 
pPropStyleContext, const SvXMLStylesContext* pStylesCtxt );
diff --git a/xmloff/source/draw/XMLImageMapExport.cxx 
b/xmloff/source/draw/XMLImageMapExport.cxx
index 746d975b737a..918d13ad07ce 100644
--- a/xmloff/source/draw/XMLImageMapExport.cxx
+++ b/xmloff/source/draw/XMLImageMapExport.cxx
@@ -70,11 +70,6 @@ XMLImageMapExport::XMLImageMapExport(SvXMLExport& rExp) :
 {
 }
 
-XMLImageMapExport::~XMLImageMapExport()
-{
-
-}
-
 void XMLImageMapExport::Export(
     const Reference<XPropertySet> & rPropertySet)
 {
diff --git a/xmloff/source/style/DashStyle.cxx 
b/xmloff/source/style/DashStyle.cxx
index 532efb79a9b2..acb866df84bd 100644
--- a/xmloff/source/style/DashStyle.cxx
+++ b/xmloff/source/style/DashStyle.cxx
@@ -54,10 +54,6 @@ XMLDashStyleImport::XMLDashStyleImport( SvXMLImport& rImp )
 {
 }
 
-XMLDashStyleImport::~XMLDashStyleImport()
-{
-}
-
 void XMLDashStyleImport::importXML(
     const uno::Reference< xml::sax::XFastAttributeList >& xAttrList,
     uno::Any& rValue,
@@ -180,10 +176,6 @@ XMLDashStyleExport::XMLDashStyleExport( SvXMLExport& rExp )
 {
 }
 
-XMLDashStyleExport::~XMLDashStyleExport()
-{
-}
-
 void XMLDashStyleExport::exportXML(
     const OUString& rStrName,
     const uno::Any& rValue )
diff --git a/xmloff/source/style/GradientStyle.cxx 
b/xmloff/source/style/GradientStyle.cxx
index 2f450af819d7..17c058727679 100644
--- a/xmloff/source/style/GradientStyle.cxx
+++ b/xmloff/source/style/GradientStyle.cxx
@@ -57,10 +57,6 @@ XMLGradientStyleImport::XMLGradientStyleImport(
 {
 }
 
-XMLGradientStyleImport::~XMLGradientStyleImport()
-{
-}
-
 void XMLGradientStyleImport::importXML(
     const uno::Reference< xml::sax::XFastAttributeList >& xAttrList,
     uno::Any& rValue,
@@ -154,10 +150,6 @@ XMLGradientStyleExport::XMLGradientStyleExport(
 {
 }
 
-XMLGradientStyleExport::~XMLGradientStyleExport()
-{
-}
-
 void XMLGradientStyleExport::exportXML(
     const OUString& rStrName,
     const uno::Any& rValue )
diff --git a/xmloff/source/style/HatchStyle.cxx 
b/xmloff/source/style/HatchStyle.cxx
index 875ff203d0ce..f49fc4a5af13 100644
--- a/xmloff/source/style/HatchStyle.cxx
+++ b/xmloff/source/style/HatchStyle.cxx
@@ -54,10 +54,6 @@ XMLHatchStyleImport::XMLHatchStyleImport( SvXMLImport& rImp )
 {
 }
 
-XMLHatchStyleImport::~XMLHatchStyleImport()
-{
-}
-
 void XMLHatchStyleImport::importXML(
     const uno::Reference< xml::sax::XFastAttributeList >& xAttrList,
     uno::Any& rValue,
@@ -127,10 +123,6 @@ XMLHatchStyleExport::XMLHatchStyleExport( SvXMLExport& 
rExp )
 {
 }
 
-XMLHatchStyleExport::~XMLHatchStyleExport()
-{
-}
-
 void XMLHatchStyleExport::exportXML(
     const OUString& rStrName,
     const uno::Any& rValue )
diff --git a/xmloff/source/style/MarkerStyle.cxx 
b/xmloff/source/style/MarkerStyle.cxx
index 181699026d8f..8f902feb9cbd 100644
--- a/xmloff/source/style/MarkerStyle.cxx
+++ b/xmloff/source/style/MarkerStyle.cxx
@@ -44,10 +44,6 @@ XMLMarkerStyleImport::XMLMarkerStyleImport( SvXMLImport& 
rImp )
 {
 }
 
-XMLMarkerStyleImport::~XMLMarkerStyleImport()
-{
-}
-
 void XMLMarkerStyleImport::importXML(
     const uno::Reference< xml::sax::XFastAttributeList >& xAttrList,
     uno::Any& rValue,
@@ -142,10 +138,6 @@ XMLMarkerStyleExport::XMLMarkerStyleExport( SvXMLExport& 
rExp )
 {
 }
 
-XMLMarkerStyleExport::~XMLMarkerStyleExport()
-{
-}
-
 void XMLMarkerStyleExport::exportXML(
     const OUString& rStrName,
     const uno::Any& rValue )
diff --git a/xmloff/source/style/TransGradientStyle.cxx 
b/xmloff/source/style/TransGradientStyle.cxx
index e76ec666492a..9b000c3eb448 100644
--- a/xmloff/source/style/TransGradientStyle.cxx
+++ b/xmloff/source/style/TransGradientStyle.cxx
@@ -58,10 +58,6 @@ XMLTransGradientStyleImport::XMLTransGradientStyleImport( 
SvXMLImport& rImp )
 {
 }
 
-XMLTransGradientStyleImport::~XMLTransGradientStyleImport()
-{
-}
-
 void XMLTransGradientStyleImport::importXML(
     const uno::Reference< xml::sax::XFastAttributeList >& xAttrList,
     uno::Any& rValue,
@@ -170,10 +166,6 @@ XMLTransGradientStyleExport::XMLTransGradientStyleExport( 
SvXMLExport& rExp )
 {
 }
 
-XMLTransGradientStyleExport::~XMLTransGradientStyleExport()
-{
-}
-
 void XMLTransGradientStyleExport::exportXML(
     const OUString& rStrName,
     const uno::Any& rValue )
diff --git a/xmloff/source/style/XMLBackgroundImageExport.cxx 
b/xmloff/source/style/XMLBackgroundImageExport.cxx
index 496856caa799..c3ae8748a538 100644
--- a/xmloff/source/style/XMLBackgroundImageExport.cxx
+++ b/xmloff/source/style/XMLBackgroundImageExport.cxx
@@ -40,10 +40,6 @@ XMLBackgroundImageExport::XMLBackgroundImageExport( 
SvXMLExport& rExp ) :
 {
 }
 
-XMLBackgroundImageExport::~XMLBackgroundImageExport()
-{
-}
-
 void XMLBackgroundImageExport::exportXML( const Any& rGraphicAny,
             const Any *pPos,
             const Any *pFilter,
diff --git a/xmloff/source/style/XMLFootnoteSeparatorExport.cxx 
b/xmloff/source/style/XMLFootnoteSeparatorExport.cxx
index 2e756d0f6641..c5e160dffd3e 100644
--- a/xmloff/source/style/XMLFootnoteSeparatorExport.cxx
+++ b/xmloff/source/style/XMLFootnoteSeparatorExport.cxx
@@ -43,11 +43,6 @@ 
XMLFootnoteSeparatorExport::XMLFootnoteSeparatorExport(SvXMLExport& rExp) :
 {
 }
 
-XMLFootnoteSeparatorExport::~XMLFootnoteSeparatorExport()
-{
-}
-
-
 void XMLFootnoteSeparatorExport::exportXML(
     const vector<XMLPropertyState> * pProperties,
     sal_uInt32 const nIdx,
diff --git a/xmloff/source/style/XMLFootnoteSeparatorExport.hxx 
b/xmloff/source/style/XMLFootnoteSeparatorExport.hxx
index c4f500f161be..2784e291b6a8 100644
--- a/xmloff/source/style/XMLFootnoteSeparatorExport.hxx
+++ b/xmloff/source/style/XMLFootnoteSeparatorExport.hxx
@@ -40,8 +40,6 @@ public:
 
     explicit XMLFootnoteSeparatorExport(SvXMLExport& rExp);
 
-    ~XMLFootnoteSeparatorExport();
-
     void exportXML(
         const ::std::vector<XMLPropertyState> * pProperties,
         sal_uInt32 nIdx,
diff --git a/xmloff/source/style/xmlnume.cxx b/xmloff/source/style/xmlnume.cxx
index 63e70ed9ee7b..682fc648af41 100644
--- a/xmloff/source/style/xmlnume.cxx
+++ b/xmloff/source/style/xmlnume.cxx
@@ -641,10 +641,6 @@ SvxXMLNumRuleExport::SvxXMLNumRuleExport( SvXMLExport& 
rExp ) :
     }
 }
 
-SvxXMLNumRuleExport::~SvxXMLNumRuleExport()
-{
-}
-
 void SvxXMLNumRuleExport::exportNumberingRule(
         const OUString& rName, bool bIsHidden,
         const Reference< XIndexReplace >& rNumRule )
diff --git a/xmloff/source/style/xmltabe.cxx b/xmloff/source/style/xmltabe.cxx
index 492f65653405..661caedf6f69 100644
--- a/xmloff/source/style/xmltabe.cxx
+++ b/xmloff/source/style/xmltabe.cxx
@@ -96,10 +96,6 @@ SvxXMLTabStopExport::SvxXMLTabStopExport(
 {
 }
 
-SvxXMLTabStopExport::~SvxXMLTabStopExport()
-{
-}
-
 void SvxXMLTabStopExport::Export( const uno::Any& rAny )
 {
     uno::Sequence< css::style::TabStop> aSeq;
diff --git a/xmloff/source/text/XMLIndexMarkExport.cxx 
b/xmloff/source/text/XMLIndexMarkExport.cxx
index b728c94120cc..f27c87d9eadd 100644
--- a/xmloff/source/text/XMLIndexMarkExport.cxx
+++ b/xmloff/source/text/XMLIndexMarkExport.cxx
@@ -54,10 +54,6 @@ const enum XMLTokenEnum lcl_pAlphaIndexMarkName[] =
           XML_ALPHABETICAL_INDEX_MARK_END };
 
 
-XMLIndexMarkExport::~XMLIndexMarkExport()
-{
-}
-
 void XMLIndexMarkExport::ExportIndexMark(
     const Reference<XPropertySet> & rPropSet,
     bool bAutoStyles)
diff --git a/xmloff/source/text/XMLIndexMarkExport.hxx 
b/xmloff/source/text/XMLIndexMarkExport.hxx
index 95b33f071f83..e406401a676b 100644
--- a/xmloff/source/text/XMLIndexMarkExport.hxx
+++ b/xmloff/source/text/XMLIndexMarkExport.hxx
@@ -55,8 +55,6 @@ class XMLIndexMarkExport
 public:
     explicit XMLIndexMarkExport(SvXMLExport& rExp);
 
-    ~XMLIndexMarkExport();
-
     /**
      * export by the property set of its *text* *portion*.
      *
diff --git a/xmloff/source/text/txtdrope.cxx b/xmloff/source/text/txtdrope.cxx
index 63b9222e14a3..5013d422c28b 100644
--- a/xmloff/source/text/txtdrope.cxx
+++ b/xmloff/source/text/txtdrope.cxx
@@ -37,10 +37,6 @@ XMLTextDropCapExport::XMLTextDropCapExport( SvXMLExport& 
rExp ) :
 {
 }
 
-XMLTextDropCapExport::~XMLTextDropCapExport()
-{
-}
-
 void XMLTextDropCapExport::exportXML( const Any& rAny,
                                       bool bWholeWord,
                                       const OUString& rStyleName )
diff --git a/xmloff/source/text/txtdrope.hxx b/xmloff/source/text/txtdrope.hxx
index fb477b17edb9..6e6b05a0bed1 100644
--- a/xmloff/source/text/txtdrope.hxx
+++ b/xmloff/source/text/txtdrope.hxx
@@ -31,7 +31,6 @@ class XMLTextDropCapExport
 public:
 
     explicit XMLTextDropCapExport( SvXMLExport& rExport );
-    ~XMLTextDropCapExport();
 
     void exportXML( const css::uno::Any& rAny,
                     bool bWholeWord,

Reply via email to