[Lldb-commits] [lldb] 0610a25 - [lldb] Delete copy operations on PluginInterface class

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Fri Oct 9 01:37:38 PDT 2020


Author: Pavel Labath
Date: 2020-10-09T10:37:09+02:00
New Revision: 0610a25a85a0a204c994331e1ab275f86010f9ad

URL: https://github.com/llvm/llvm-project/commit/0610a25a85a0a204c994331e1ab275f86010f9ad
DIFF: https://github.com/llvm/llvm-project/commit/0610a25a85a0a204c994331e1ab275f86010f9ad.diff

LOG: [lldb] Delete copy operations on PluginInterface class

This is a polymorphic class, copying it is a bad idea.

This was not a problem because most classes inheriting from it were
deleting their copy operations themselves. However, this enables us to
delete those explicit deletions, and ensure noone forgets to add them in
the future.

Added: 
    

Modified: 
    lldb/include/lldb/Core/Architecture.h
    lldb/include/lldb/Core/PluginInterface.h
    lldb/include/lldb/Symbol/SymbolVendor.h
    lldb/include/lldb/Target/DynamicLoader.h
    lldb/include/lldb/Target/LanguageRuntime.h
    lldb/include/lldb/Target/OperatingSystem.h
    lldb/include/lldb/Target/Platform.h
    lldb/include/lldb/Target/UnwindAssembly.h
    lldb/source/Core/DynamicLoader.cpp
    lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h
    lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
    lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp
    lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h
    lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
    lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
    lldb/source/Plugins/Platform/Android/PlatformAndroid.h
    lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
    lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h
    lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
    lldb/source/Plugins/Platform/Linux/PlatformLinux.h
    lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
    lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.h
    lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleBridge.h
    lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.h
    lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.h
    lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.h
    lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
    lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h
    lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp
    lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h
    lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
    lldb/source/Plugins/Platform/Windows/PlatformWindows.h
    lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
    lldb/source/Plugins/Process/mach-core/ProcessMachCore.h
    lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
    lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
    lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
    lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h
    lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
    lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.h
    lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.h
    lldb/source/Symbol/SymbolVendor.cpp
    lldb/source/Target/LanguageRuntime.cpp
    lldb/source/Target/OperatingSystem.cpp
    lldb/source/Target/UnwindAssembly.cpp

Removed: 
    


################################################################################
diff  --git a/lldb/include/lldb/Core/Architecture.h b/lldb/include/lldb/Core/Architecture.h
index d8dbbb4f540f..2ea8bd31ebf4 100644
--- a/lldb/include/lldb/Core/Architecture.h
+++ b/lldb/include/lldb/Core/Architecture.h
@@ -15,9 +15,6 @@ namespace lldb_private {
 
 class Architecture : public PluginInterface {
 public:
-  Architecture() = default;
-  ~Architecture() override = default;
-
   /// This is currently intended to handle cases where a
   /// program stops at an instruction that won't get executed and it
   /// allows the stop reason, like "breakpoint hit", to be replaced
@@ -100,10 +97,6 @@ class Architecture : public PluginInterface {
                                                Target &target) const {
     return addr;
   }
-
-private:
-  Architecture(const Architecture &) = delete;
-  void operator=(const Architecture &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/include/lldb/Core/PluginInterface.h b/lldb/include/lldb/Core/PluginInterface.h
index 17f6dc367155..5bdb2f45b665 100644
--- a/lldb/include/lldb/Core/PluginInterface.h
+++ b/lldb/include/lldb/Core/PluginInterface.h
@@ -15,11 +15,15 @@ namespace lldb_private {
 
 class PluginInterface {
 public:
-  virtual ~PluginInterface() {}
+  PluginInterface() = default;
+  virtual ~PluginInterface() = default;
 
   virtual ConstString GetPluginName() = 0;
 
   virtual uint32_t GetPluginVersion() = 0;
+
+  PluginInterface(const PluginInterface &) = delete;
+  PluginInterface &operator=(const PluginInterface &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/include/lldb/Symbol/SymbolVendor.h b/lldb/include/lldb/Symbol/SymbolVendor.h
index c9c59a3fc1be..5c785e8c5a85 100644
--- a/lldb/include/lldb/Symbol/SymbolVendor.h
+++ b/lldb/include/lldb/Symbol/SymbolVendor.h
@@ -14,6 +14,7 @@
 #include "lldb/Core/ModuleChild.h"
 #include "lldb/Core/PluginInterface.h"
 #include "lldb/Symbol/SourceModule.h"
+#include "lldb/Symbol/SymbolFile.h"
 #include "lldb/Symbol/TypeMap.h"
 #include "lldb/lldb-private.h"
 #include "llvm/ADT/DenseSet.h"
@@ -35,8 +36,6 @@ class SymbolVendor : public ModuleChild, public PluginInterface {
   // Constructors and Destructors
   SymbolVendor(const lldb::ModuleSP &module_sp);
 
-  ~SymbolVendor() override;
-
   void AddSymbolFileRepresentation(const lldb::ObjectFileSP &objfile_sp);
 
   SymbolFile *GetSymbolFile() { return m_sym_file_up.get(); }
@@ -49,11 +48,6 @@ class SymbolVendor : public ModuleChild, public PluginInterface {
 protected:
   std::unique_ptr<SymbolFile> m_sym_file_up; // A single symbol file. Subclasses
                                              // can add more of these if needed.
-
-private:
-  // For SymbolVendor only
-  SymbolVendor(const SymbolVendor &) = delete;
-  const SymbolVendor &operator=(const SymbolVendor &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/include/lldb/Target/DynamicLoader.h b/lldb/include/lldb/Target/DynamicLoader.h
index d3ce1b05ed51..dead3eec7013 100644
--- a/lldb/include/lldb/Target/DynamicLoader.h
+++ b/lldb/include/lldb/Target/DynamicLoader.h
@@ -68,12 +68,6 @@ class DynamicLoader : public PluginInterface {
   /// Construct with a process.
   DynamicLoader(Process *process);
 
-  /// Destructor.
-  ///
-  /// The destructor is virtual since this class is designed to be inherited
-  /// from by the plug-in instance.
-  ~DynamicLoader() override;
-
   /// Called after attaching a process.
   ///
   /// Allow DynamicLoader plug-ins to execute some code after attaching to a
@@ -308,10 +302,6 @@ class DynamicLoader : public PluginInterface {
   // Member variables.
   Process
       *m_process; ///< The process that this dynamic loader plug-in is tracking.
-
-private:
-  DynamicLoader(const DynamicLoader &) = delete;
-  const DynamicLoader &operator=(const DynamicLoader &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/include/lldb/Target/LanguageRuntime.h b/lldb/include/lldb/Target/LanguageRuntime.h
index da3cb9702392..a3897adfe46a 100644
--- a/lldb/include/lldb/Target/LanguageRuntime.h
+++ b/lldb/include/lldb/Target/LanguageRuntime.h
@@ -59,8 +59,6 @@ class ExceptionSearchFilter : public SearchFilter {
 
 class LanguageRuntime : public Runtime, public PluginInterface {
 public:
-  ~LanguageRuntime() override;
-
   static LanguageRuntime *FindPlugin(Process *process,
                                      lldb::LanguageType language);
 
@@ -177,10 +175,6 @@ class LanguageRuntime : public Runtime, public PluginInterface {
 
 protected:
   LanguageRuntime(Process *process);
-
-private:
-  LanguageRuntime(const LanguageRuntime &) = delete;
-  const LanguageRuntime &operator=(const LanguageRuntime &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/include/lldb/Target/OperatingSystem.h b/lldb/include/lldb/Target/OperatingSystem.h
index 6db5c0a01f36..ceeddceb0f2c 100644
--- a/lldb/include/lldb/Target/OperatingSystem.h
+++ b/lldb/include/lldb/Target/OperatingSystem.h
@@ -40,11 +40,8 @@ class OperatingSystem : public PluginInterface {
   ///     should be used. If NULL, pick the best plug-in.
   static OperatingSystem *FindPlugin(Process *process, const char *plugin_name);
 
-  // Class Methods
   OperatingSystem(Process *process);
 
-  ~OperatingSystem() override;
-
   // Plug-in Methods
   virtual bool UpdateThreadList(ThreadList &old_thread_list,
                                 ThreadList &real_thread_list,
@@ -68,9 +65,6 @@ class OperatingSystem : public PluginInterface {
   // Member variables.
   Process
       *m_process; ///< The process that this dynamic loader plug-in is tracking.
-private:
-  OperatingSystem(const OperatingSystem &) = delete;
-  const OperatingSystem &operator=(const OperatingSystem &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/include/lldb/Target/Platform.h b/lldb/include/lldb/Target/Platform.h
index 64b49ecca606..f371b8153144 100644
--- a/lldb/include/lldb/Target/Platform.h
+++ b/lldb/include/lldb/Target/Platform.h
@@ -951,9 +951,6 @@ class Platform : public PluginInterface {
                               Platform &remote_platform);
 
   FileSpec GetModuleCacheRoot();
-
-  Platform(const Platform &) = delete;
-  const Platform &operator=(const Platform &) = delete;
 };
 
 class PlatformList {

diff  --git a/lldb/include/lldb/Target/UnwindAssembly.h b/lldb/include/lldb/Target/UnwindAssembly.h
index abfd38774399..d20aa52d6f59 100644
--- a/lldb/include/lldb/Target/UnwindAssembly.h
+++ b/lldb/include/lldb/Target/UnwindAssembly.h
@@ -20,8 +20,6 @@ class UnwindAssembly : public std::enable_shared_from_this<UnwindAssembly>,
 public:
   static lldb::UnwindAssemblySP FindPlugin(const ArchSpec &arch);
 
-  ~UnwindAssembly() override;
-
   virtual bool
   GetNonCallSiteUnwindPlanFromAssembly(AddressRange &func, Thread &thread,
                                        UnwindPlan &unwind_plan) = 0;
@@ -42,11 +40,6 @@ class UnwindAssembly : public std::enable_shared_from_this<UnwindAssembly>,
 protected:
   UnwindAssembly(const ArchSpec &arch);
   ArchSpec m_arch;
-
-private:
-  UnwindAssembly() = delete;
-  UnwindAssembly(const UnwindAssembly &) = delete;
-  const UnwindAssembly &operator=(const UnwindAssembly &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/source/Core/DynamicLoader.cpp b/lldb/source/Core/DynamicLoader.cpp
index ceccbe437e1d..22cb9f18147a 100644
--- a/lldb/source/Core/DynamicLoader.cpp
+++ b/lldb/source/Core/DynamicLoader.cpp
@@ -60,8 +60,6 @@ DynamicLoader *DynamicLoader::FindPlugin(Process *process,
 
 DynamicLoader::DynamicLoader(Process *process) : m_process(process) {}
 
-DynamicLoader::~DynamicLoader() = default;
-
 // Accessosors to the global setting as to whether to stop at image (shared
 // library) loading/unloading.
 

diff  --git a/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h b/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h
index 2d39ce06a8d9..2570e003fd6a 100644
--- a/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h
+++ b/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h
@@ -131,10 +131,6 @@ class DynamicLoaderHexagonDYLD : public lldb_private::DynamicLoader {
 private:
   const lldb_private::SectionList *
   GetSectionListFromModule(const lldb::ModuleSP module) const;
-
-  DynamicLoaderHexagonDYLD(const DynamicLoaderHexagonDYLD &) = delete;
-  const DynamicLoaderHexagonDYLD &
-  operator=(const DynamicLoaderHexagonDYLD &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_DYNAMICLOADER_HEXAGON_DYLD_DYNAMICLOADERHEXAGONDYLD_H

diff  --git a/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h b/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
index 12e294e89e88..4f4a84946b63 100644
--- a/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
+++ b/lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
@@ -103,10 +103,6 @@ class DynamicLoaderMacOS : public lldb_private::DynamicLoaderDarwin {
                                             // exec's when talking to
                                             // debugservers that don't support
                                             // the "reason:exec" annotation.
-
-private:
-  DynamicLoaderMacOS(const DynamicLoaderMacOS &) = delete;
-  const DynamicLoaderMacOS &operator=(const DynamicLoaderMacOS &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_DYNAMICLOADER_MACOSX_DYLD_DYNAMICLOADERMACOS_H

diff  --git a/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp b/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp
index 48762fe6e0c3..62b11405a385 100644
--- a/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp
+++ b/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp
@@ -63,9 +63,6 @@ DynamicLoader *DynamicLoaderStatic::CreateInstance(Process *process,
 DynamicLoaderStatic::DynamicLoaderStatic(Process *process)
     : DynamicLoader(process) {}
 
-// Destructor
-DynamicLoaderStatic::~DynamicLoaderStatic() {}
-
 /// Called after attaching a process.
 ///
 /// Allow DynamicLoader plug-ins to execute some code after

diff  --git a/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h b/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h
index ce78804f9a92..1a36c7851c2a 100644
--- a/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h
+++ b/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h
@@ -18,8 +18,6 @@ class DynamicLoaderStatic : public lldb_private::DynamicLoader {
 public:
   DynamicLoaderStatic(lldb_private::Process *process);
 
-  ~DynamicLoaderStatic() override;
-
   // Static Functions
   static void Initialize();
 
@@ -52,9 +50,6 @@ class DynamicLoaderStatic : public lldb_private::DynamicLoader {
 
 private:
   void LoadAllImagesAtFileAddresses();
-
-  DynamicLoaderStatic(const DynamicLoaderStatic &) = delete;
-  const DynamicLoaderStatic &operator=(const DynamicLoaderStatic &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_DYNAMICLOADER_STATIC_DYNAMICLOADERSTATIC_H

diff  --git a/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp b/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
index d3a25f37985f..067f5e088380 100644
--- a/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
+++ b/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
@@ -37,9 +37,6 @@ static ConstString g_this = ConstString("this");
 
 char CPPLanguageRuntime::ID = 0;
 
-// Destructor
-CPPLanguageRuntime::~CPPLanguageRuntime() {}
-
 CPPLanguageRuntime::CPPLanguageRuntime(Process *process)
     : LanguageRuntime(process) {}
 

diff  --git a/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h b/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
index 5b00590e6301..3f5b99351872 100644
--- a/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
+++ b/lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
@@ -40,8 +40,6 @@ class CPPLanguageRuntime : public LanguageRuntime {
   LibCppStdFunctionCallableInfo
   FindLibCppStdFunctionCallableInfo(lldb::ValueObjectSP &valobj_sp);
 
-  ~CPPLanguageRuntime() override;
-
   static char ID;
 
   bool isA(const void *ClassID) const override {
@@ -89,9 +87,6 @@ class CPPLanguageRuntime : public LanguageRuntime {
     llvm::StringMap<CPPLanguageRuntime::LibCppStdFunctionCallableInfo>;
 
   OperatorStringToCallableInfoMap CallableLookupCache;
-
-  CPPLanguageRuntime(const CPPLanguageRuntime &) = delete;
-  const CPPLanguageRuntime &operator=(const CPPLanguageRuntime &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp b/lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
index 9949fbf18fa3..2cd4abbf14ad 100644
--- a/lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
+++ b/lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
@@ -130,8 +130,6 @@ PlatformSP PlatformAndroid::CreateInstance(bool force, const ArchSpec *arch) {
 PlatformAndroid::PlatformAndroid(bool is_host)
     : PlatformLinux(is_host), m_sdk_version(0) {}
 
-PlatformAndroid::~PlatformAndroid() {}
-
 ConstString PlatformAndroid::GetPluginNameStatic(bool is_host) {
   if (is_host) {
     static ConstString g_host_name(Platform::GetHostPlatformName());

diff  --git a/lldb/source/Plugins/Platform/Android/PlatformAndroid.h b/lldb/source/Plugins/Platform/Android/PlatformAndroid.h
index 2ea1c0f46181..990e1d099404 100644
--- a/lldb/source/Plugins/Platform/Android/PlatformAndroid.h
+++ b/lldb/source/Plugins/Platform/Android/PlatformAndroid.h
@@ -23,8 +23,6 @@ class PlatformAndroid : public platform_linux::PlatformLinux {
 public:
   PlatformAndroid(bool is_host);
 
-  ~PlatformAndroid() override;
-
   static void Initialize();
 
   static void Terminate();
@@ -76,9 +74,6 @@ class PlatformAndroid : public platform_linux::PlatformLinux {
   std::unique_ptr<AdbClient::SyncService> m_adb_sync_svc;
   std::string m_device_id;
   uint32_t m_sdk_version;
-
-  PlatformAndroid(const PlatformAndroid &) = delete;
-  const PlatformAndroid &operator=(const PlatformAndroid &) = delete;
 };
 
 } // namespace platofor_android

diff  --git a/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp b/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
index 7318264c554b..a5ce513aa338 100644
--- a/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
+++ b/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp
@@ -125,8 +125,6 @@ PlatformFreeBSD::PlatformFreeBSD(bool is_host)
     : PlatformPOSIX(is_host) // This is the local host platform
 {}
 
-PlatformFreeBSD::~PlatformFreeBSD() = default;
-
 bool PlatformFreeBSD::GetSupportedArchitectureAtIndex(uint32_t idx,
                                                       ArchSpec &arch) {
   if (IsHost()) {

diff  --git a/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h b/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h
index 4f3b119c568f..c198ea18638d 100644
--- a/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h
+++ b/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h
@@ -18,8 +18,6 @@ class PlatformFreeBSD : public PlatformPOSIX {
 public:
   PlatformFreeBSD(bool is_host);
 
-  ~PlatformFreeBSD() override;
-
   static void Initialize();
 
   static void Terminate();
@@ -55,10 +53,6 @@ class PlatformFreeBSD : public PlatformPOSIX {
                                   lldb::addr_t length, unsigned prot,
                                   unsigned flags, lldb::addr_t fd,
                                   lldb::addr_t offset) override;
-
-private:
-  PlatformFreeBSD(const PlatformFreeBSD &) = delete;
-  const PlatformFreeBSD &operator=(const PlatformFreeBSD &) = delete;
 };
 
 } // namespace platform_freebsd

diff  --git a/lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp b/lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
index a12aa1a716be..5eb0508de32c 100644
--- a/lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
+++ b/lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
@@ -124,8 +124,6 @@ PlatformLinux::PlatformLinux(bool is_host)
     : PlatformPOSIX(is_host) // This is the local host platform
 {}
 
-PlatformLinux::~PlatformLinux() = default;
-
 bool PlatformLinux::GetSupportedArchitectureAtIndex(uint32_t idx,
                                                     ArchSpec &arch) {
   if (IsHost()) {

diff  --git a/lldb/source/Plugins/Platform/Linux/PlatformLinux.h b/lldb/source/Plugins/Platform/Linux/PlatformLinux.h
index fe0ad200d085..81175d7c5cab 100644
--- a/lldb/source/Plugins/Platform/Linux/PlatformLinux.h
+++ b/lldb/source/Plugins/Platform/Linux/PlatformLinux.h
@@ -18,8 +18,6 @@ class PlatformLinux : public PlatformPOSIX {
 public:
   PlatformLinux(bool is_host);
 
-  ~PlatformLinux() override;
-
   static void Initialize();
 
   static void Terminate();
@@ -54,10 +52,6 @@ class PlatformLinux : public PlatformPOSIX {
                                   lldb::addr_t length, unsigned prot,
                                   unsigned flags, lldb::addr_t fd,
                                   lldb::addr_t offset) override;
-
-private:
-  PlatformLinux(const PlatformLinux &) = delete;
-  const PlatformLinux &operator=(const PlatformLinux &) = delete;
 };
 
 } // namespace platform_linux

diff  --git a/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp b/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
index a1128328ea5e..157745002ac8 100644
--- a/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
+++ b/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.cpp
@@ -171,12 +171,6 @@ const char *PlatformMacOSX::GetDescriptionStatic(bool is_host) {
 /// Default Constructor
 PlatformMacOSX::PlatformMacOSX(bool is_host) : PlatformDarwin(is_host) {}
 
-/// Destructor.
-///
-/// The destructor is virtual since this class is designed to be
-/// inherited from by the plug-in instance.
-PlatformMacOSX::~PlatformMacOSX() {}
-
 ConstString PlatformMacOSX::GetSDKDirectory(lldb_private::Target &target) {
   ModuleSP exe_module_sp(target.GetExecutableModule());
   if (!exe_module_sp)

diff  --git a/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.h b/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.h
index 3e9a0b3aab90..97107e640589 100644
--- a/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.h
+++ b/lldb/source/Plugins/Platform/MacOSX/PlatformMacOSX.h
@@ -15,8 +15,6 @@ class PlatformMacOSX : public PlatformDarwin {
 public:
   PlatformMacOSX(bool is_host);
 
-  ~PlatformMacOSX() override;
-
   // Class functions
   static lldb::PlatformSP CreateInstance(bool force,
                                          const lldb_private::ArchSpec *arch);
@@ -77,9 +75,6 @@ class PlatformMacOSX : public PlatformDarwin {
   }
 
 private:
-  PlatformMacOSX(const PlatformMacOSX &) = delete;
-  const PlatformMacOSX &operator=(const PlatformMacOSX &) = delete;
-
 #if defined(__arm__) || defined(__arm64__) || defined(__aarch64__)
   uint32_t m_num_arm_arches = 0;
 #endif

diff  --git a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleBridge.h b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleBridge.h
index b255fa37ed16..5e7420e2508b 100644
--- a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleBridge.h
+++ b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleBridge.h
@@ -21,8 +21,6 @@ class PlatformRemoteAppleBridge : public PlatformRemoteDarwinDevice {
 public:
   PlatformRemoteAppleBridge();
 
-  ~PlatformRemoteAppleBridge() override = default;
-
   // Class Functions
   static lldb::PlatformSP CreateInstance(bool force,
                                          const lldb_private::ArchSpec *arch);
@@ -56,11 +54,6 @@ class PlatformRemoteAppleBridge : public PlatformRemoteDarwinDevice {
   void GetDeviceSupportDirectoryNames (std::vector<std::string> &dirnames) override;
 
   std::string GetPlatformName () override;
-
-private:
-  PlatformRemoteAppleBridge(const PlatformRemoteAppleBridge &) = delete;
-  const PlatformRemoteAppleBridge &
-  operator=(const PlatformRemoteAppleBridge &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEBRIDGE_H

diff  --git a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.h b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.h
index f5b554d2f66c..c556476340fc 100644
--- a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.h
+++ b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleTV.h
@@ -21,8 +21,6 @@ class PlatformRemoteAppleTV : public PlatformRemoteDarwinDevice {
 public:
   PlatformRemoteAppleTV();
 
-  ~PlatformRemoteAppleTV() override = default;
-
   // Class Functions
   static lldb::PlatformSP CreateInstance(bool force,
                                          const lldb_private::ArchSpec *arch);
@@ -56,11 +54,6 @@ class PlatformRemoteAppleTV : public PlatformRemoteDarwinDevice {
   void GetDeviceSupportDirectoryNames (std::vector<std::string> &dirnames) override;
 
   std::string GetPlatformName () override;
-
-private:
-  PlatformRemoteAppleTV(const PlatformRemoteAppleTV &) = delete;
-  const PlatformRemoteAppleTV &
-  operator=(const PlatformRemoteAppleTV &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLETV_H

diff  --git a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.h b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.h
index 712693f6c410..771e1ca53619 100644
--- a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.h
+++ b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteAppleWatch.h
@@ -22,8 +22,6 @@ class PlatformRemoteAppleWatch : public PlatformRemoteDarwinDevice {
 public:
   PlatformRemoteAppleWatch();
 
-  ~PlatformRemoteAppleWatch() override = default;
-
   // Class Functions
   static lldb::PlatformSP CreateInstance(bool force,
                                          const lldb_private::ArchSpec *arch);
@@ -59,11 +57,6 @@ class PlatformRemoteAppleWatch : public PlatformRemoteDarwinDevice {
   void GetDeviceSupportDirectoryNames (std::vector<std::string> &dirnames) override;
 
   std::string GetPlatformName () override;
-
-private:
-  PlatformRemoteAppleWatch(const PlatformRemoteAppleWatch &) = delete;
-  const PlatformRemoteAppleWatch &
-  operator=(const PlatformRemoteAppleWatch &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEAPPLEWATCH_H

diff  --git a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.h b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.h
index 4f38128bfb0a..74454fc7c6ad 100644
--- a/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.h
+++ b/lldb/source/Plugins/Platform/MacOSX/PlatformRemoteiOS.h
@@ -20,8 +20,6 @@ class PlatformRemoteiOS : public PlatformRemoteDarwinDevice {
 public:
   PlatformRemoteiOS();
 
-  ~PlatformRemoteiOS() override = default;
-
   // Class Functions
   static lldb::PlatformSP CreateInstance(bool force,
                                          const lldb_private::ArchSpec *arch);
@@ -55,10 +53,6 @@ class PlatformRemoteiOS : public PlatformRemoteDarwinDevice {
   void GetDeviceSupportDirectoryNames (std::vector<std::string> &dirnames) override;
 
   std::string GetPlatformName () override;
-
-private:
-  PlatformRemoteiOS(const PlatformRemoteiOS &) = delete;
-  const PlatformRemoteiOS &operator=(const PlatformRemoteiOS &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_PLATFORM_MACOSX_PLATFORMREMOTEIOS_H

diff  --git a/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp b/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
index 0e59e5aa2ec2..00674b7471dd 100644
--- a/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
+++ b/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp
@@ -117,8 +117,6 @@ PlatformNetBSD::PlatformNetBSD(bool is_host)
     : PlatformPOSIX(is_host) // This is the local host platform
 {}
 
-PlatformNetBSD::~PlatformNetBSD() = default;
-
 bool PlatformNetBSD::GetSupportedArchitectureAtIndex(uint32_t idx,
                                                      ArchSpec &arch) {
   if (IsHost()) {

diff  --git a/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h b/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h
index 36b228af8045..63b8dd619822 100644
--- a/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h
+++ b/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h
@@ -18,8 +18,6 @@ class PlatformNetBSD : public PlatformPOSIX {
 public:
   PlatformNetBSD(bool is_host);
 
-  ~PlatformNetBSD() override;
-
   static void Initialize();
 
   static void Terminate();
@@ -54,10 +52,6 @@ class PlatformNetBSD : public PlatformPOSIX {
                                   lldb::addr_t length, unsigned prot,
                                   unsigned flags, lldb::addr_t fd,
                                   lldb::addr_t offset) override;
-
-private:
-  PlatformNetBSD(const PlatformNetBSD &) = delete;
-  const PlatformNetBSD &operator=(const PlatformNetBSD &) = delete;
 };
 
 } // namespace platform_netbsd

diff  --git a/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp b/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp
index a743970990a6..2cd024f56ec9 100644
--- a/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp
+++ b/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp
@@ -123,8 +123,6 @@ PlatformOpenBSD::PlatformOpenBSD(bool is_host)
     : PlatformPOSIX(is_host) // This is the local host platform
 {}
 
-PlatformOpenBSD::~PlatformOpenBSD() = default;
-
 bool PlatformOpenBSD::GetSupportedArchitectureAtIndex(uint32_t idx,
                                                       ArchSpec &arch) {
   if (IsHost()) {

diff  --git a/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h b/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h
index 9cfe32c3720c..e1402ae0ae9f 100644
--- a/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h
+++ b/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.h
@@ -18,8 +18,6 @@ class PlatformOpenBSD : public PlatformPOSIX {
 public:
   PlatformOpenBSD(bool is_host);
 
-  ~PlatformOpenBSD() override;
-
   static void Initialize();
 
   static void Terminate();
@@ -52,10 +50,6 @@ class PlatformOpenBSD : public PlatformPOSIX {
                                   lldb::addr_t length, unsigned prot,
                                   unsigned flags, lldb::addr_t fd,
                                   lldb::addr_t offset) override;
-
-private:
-  PlatformOpenBSD(const PlatformOpenBSD &) = delete;
-  const PlatformOpenBSD &operator=(const PlatformOpenBSD &) = delete;
 };
 
 } // namespace platform_openbsd

diff  --git a/lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp b/lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
index f7f5cf166192..167a92118fda 100644
--- a/lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
+++ b/lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
@@ -151,12 +151,6 @@ void PlatformWindows::Terminate() {
 /// Default Constructor
 PlatformWindows::PlatformWindows(bool is_host) : RemoteAwarePlatform(is_host) {}
 
-/// Destructor.
-///
-/// The destructor is virtual since this class is designed to be
-/// inherited from by the plug-in instance.
-PlatformWindows::~PlatformWindows() = default;
-
 Status PlatformWindows::ConnectRemote(Args &args) {
   Status error;
   if (IsHost()) {

diff  --git a/lldb/source/Plugins/Platform/Windows/PlatformWindows.h b/lldb/source/Plugins/Platform/Windows/PlatformWindows.h
index d8b2cd8a26a3..e45a0e98d020 100644
--- a/lldb/source/Plugins/Platform/Windows/PlatformWindows.h
+++ b/lldb/source/Plugins/Platform/Windows/PlatformWindows.h
@@ -17,8 +17,6 @@ class PlatformWindows : public RemoteAwarePlatform {
 public:
   PlatformWindows(bool is_host);
 
-  ~PlatformWindows() override;
-
   static void Initialize();
 
   static void Terminate();
@@ -65,10 +63,6 @@ class PlatformWindows : public RemoteAwarePlatform {
   void CalculateTrapHandlerSymbolNames() override {}
 
   ConstString GetFullNameForDylib(ConstString basename) override;
-
-private:
-  PlatformWindows(const PlatformWindows &) = delete;
-  const PlatformWindows &operator=(const PlatformWindows &) = delete;
 };
 
 } // namespace lldb_private

diff  --git a/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h b/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
index 6f6309799f43..ddde3d315544 100644
--- a/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
+++ b/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
@@ -125,8 +125,6 @@ class ProcessElfCore : public lldb_private::Process {
   lldb::ModuleSP m_core_module_sp;
   lldb_private::FileSpec m_core_file;
   std::string m_dyld_plugin_name;
-  ProcessElfCore(const ProcessElfCore &) = delete;
-  const ProcessElfCore &operator=(const ProcessElfCore &) = delete;
 
   // True if m_thread_contexts contains valid entries
   bool m_thread_data_valid = false;

diff  --git a/lldb/source/Plugins/Process/mach-core/ProcessMachCore.h b/lldb/source/Plugins/Process/mach-core/ProcessMachCore.h
index 309464102705..4bda62b48d69 100644
--- a/lldb/source/Plugins/Process/mach-core/ProcessMachCore.h
+++ b/lldb/source/Plugins/Process/mach-core/ProcessMachCore.h
@@ -120,9 +120,6 @@ class ProcessMachCore : public lldb_private::Process {
   lldb::addr_t m_dyld_addr;
   lldb::addr_t m_mach_kernel_addr;
   lldb_private::ConstString m_dyld_plugin_name;
-
-  ProcessMachCore(const ProcessMachCore &) = delete;
-  const ProcessMachCore &operator=(const ProcessMachCore &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_PROCESS_MACH_CORE_PROCESSMACHCORE_H

diff  --git a/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp b/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
index c4a0e609aa22..3a5e02d4fb86 100644
--- a/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
+++ b/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp
@@ -59,8 +59,6 @@ SymbolFileSymtab::SymbolFileSymtab(ObjectFileSP objfile_sp)
     : SymbolFile(std::move(objfile_sp)), m_source_indexes(), m_func_indexes(),
       m_code_indexes(), m_objc_class_name_to_index() {}
 
-SymbolFileSymtab::~SymbolFileSymtab() {}
-
 uint32_t SymbolFileSymtab::CalculateAbilities() {
   uint32_t abilities = 0;
   if (m_objfile_sp) {

diff  --git a/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h b/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
index 9557ebbcb272..377c41e50770 100644
--- a/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
+++ b/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.h
@@ -31,8 +31,6 @@ class SymbolFileSymtab : public lldb_private::SymbolFile {
   // Constructors and Destructors
   SymbolFileSymtab(lldb::ObjectFileSP objfile_sp);
 
-  ~SymbolFileSymtab() override;
-
   // Static Functions
   static void Initialize();
 
@@ -104,10 +102,6 @@ class SymbolFileSymtab : public lldb_private::SymbolFile {
   lldb_private::Symtab::IndexCollection m_data_indexes;
   lldb_private::Symtab::NameToIndexMap m_objc_class_name_to_index;
   TypeMap m_objc_class_types;
-
-private:
-  SymbolFileSymtab(const SymbolFileSymtab &) = delete;
-  const SymbolFileSymtab &operator=(const SymbolFileSymtab &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_SYMBOLFILE_SYMTAB_SYMBOLFILESYMTAB_H

diff  --git a/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp b/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
index 2e6fd4365021..89b07d22e350 100644
--- a/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
+++ b/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp
@@ -31,9 +31,6 @@ LLDB_PLUGIN_DEFINE(SymbolVendorELF)
 SymbolVendorELF::SymbolVendorELF(const lldb::ModuleSP &module_sp)
     : SymbolVendor(module_sp) {}
 
-// Destructor
-SymbolVendorELF::~SymbolVendorELF() {}
-
 void SymbolVendorELF::Initialize() {
   PluginManager::RegisterPlugin(GetPluginNameStatic(),
                                 GetPluginDescriptionStatic(), CreateInstance);

diff  --git a/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h b/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h
index 824906c04955..2080084a15b8 100644
--- a/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h
+++ b/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.h
@@ -17,8 +17,6 @@ class SymbolVendorELF : public lldb_private::SymbolVendor {
   // Constructors and Destructors
   SymbolVendorELF(const lldb::ModuleSP &module_sp);
 
-  ~SymbolVendorELF() override;
-
   // Static Functions
   static void Initialize();
 
@@ -36,10 +34,6 @@ class SymbolVendorELF : public lldb_private::SymbolVendor {
   lldb_private::ConstString GetPluginName() override;
 
   uint32_t GetPluginVersion() override;
-
-private:
-  SymbolVendorELF(const SymbolVendorELF &) = delete;
-  const SymbolVendorELF &operator=(const SymbolVendorELF &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_SYMBOLVENDOR_ELF_SYMBOLVENDORELF_H

diff  --git a/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp b/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
index 10c1b7cc1351..605a35dc6289 100644
--- a/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
+++ b/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
@@ -33,9 +33,6 @@ LLDB_PLUGIN_DEFINE(SymbolVendorMacOSX)
 SymbolVendorMacOSX::SymbolVendorMacOSX(const lldb::ModuleSP &module_sp)
     : SymbolVendor(module_sp) {}
 
-// Destructor
-SymbolVendorMacOSX::~SymbolVendorMacOSX() {}
-
 static bool UUIDsMatch(Module *module, ObjectFile *ofile,
                        lldb_private::Stream *feedback_strm) {
   if (module && ofile) {

diff  --git a/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.h b/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.h
index b15ea74d07db..4324e24955e1 100644
--- a/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.h
+++ b/lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.h
@@ -30,16 +30,10 @@ class SymbolVendorMacOSX : public lldb_private::SymbolVendor {
   // Constructors and Destructors
   SymbolVendorMacOSX(const lldb::ModuleSP &module_sp);
 
-  virtual ~SymbolVendorMacOSX();
-
   // PluginInterface protocol
   lldb_private::ConstString GetPluginName() override;
 
   uint32_t GetPluginVersion() override;
-
-private:
-  SymbolVendorMacOSX(const SymbolVendorMacOSX &) = delete;
-  const SymbolVendorMacOSX &operator=(const SymbolVendorMacOSX &) = delete;
 };
 
 #endif // LLDB_SOURCE_PLUGINS_SYMBOLVENDOR_MACOSX_SYMBOLVENDORMACOSX_H

diff  --git a/lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.h b/lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.h
index 96e737b1be96..b212337e0549 100644
--- a/lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.h
+++ b/lldb/source/Plugins/SymbolVendor/wasm/SymbolVendorWasm.h
@@ -33,10 +33,6 @@ class SymbolVendorWasm : public lldb_private::SymbolVendor {
   lldb_private::ConstString GetPluginName() override;
   uint32_t GetPluginVersion() override;
   /// \}
-
-private:
-  SymbolVendorWasm(const SymbolVendorWasm &) = delete;
-  const SymbolVendorWasm &operator=(const SymbolVendorWasm &) = delete;
 };
 
 } // namespace wasm

diff  --git a/lldb/source/Symbol/SymbolVendor.cpp b/lldb/source/Symbol/SymbolVendor.cpp
index 0a5acbc48eb4..0ef332a5813f 100644
--- a/lldb/source/Symbol/SymbolVendor.cpp
+++ b/lldb/source/Symbol/SymbolVendor.cpp
@@ -60,9 +60,6 @@ SymbolVendor *SymbolVendor::FindPlugin(const lldb::ModuleSP &module_sp,
 SymbolVendor::SymbolVendor(const lldb::ModuleSP &module_sp)
     : ModuleChild(module_sp), m_sym_file_up() {}
 
-// Destructor
-SymbolVendor::~SymbolVendor() {}
-
 // Add a representation given an object file.
 void SymbolVendor::AddSymbolFileRepresentation(const ObjectFileSP &objfile_sp) {
   ModuleSP module_sp(GetModule());

diff  --git a/lldb/source/Target/LanguageRuntime.cpp b/lldb/source/Target/LanguageRuntime.cpp
index 0bbb9660f741..f2e2febf8b88 100644
--- a/lldb/source/Target/LanguageRuntime.cpp
+++ b/lldb/source/Target/LanguageRuntime.cpp
@@ -216,8 +216,6 @@ LanguageRuntime *LanguageRuntime::FindPlugin(Process *process,
 
 LanguageRuntime::LanguageRuntime(Process *process) : Runtime(process) {}
 
-LanguageRuntime::~LanguageRuntime() = default;
-
 BreakpointPreconditionSP
 LanguageRuntime::GetExceptionPrecondition(LanguageType language,
                                           bool throw_bp) {

diff  --git a/lldb/source/Target/OperatingSystem.cpp b/lldb/source/Target/OperatingSystem.cpp
index ddffab4553cc..033a806460da 100644
--- a/lldb/source/Target/OperatingSystem.cpp
+++ b/lldb/source/Target/OperatingSystem.cpp
@@ -44,8 +44,6 @@ OperatingSystem *OperatingSystem::FindPlugin(Process *process,
 
 OperatingSystem::OperatingSystem(Process *process) : m_process(process) {}
 
-OperatingSystem::~OperatingSystem() = default;
-
 bool OperatingSystem::IsOperatingSystemPluginThread(
     const lldb::ThreadSP &thread_sp) {
   if (thread_sp)

diff  --git a/lldb/source/Target/UnwindAssembly.cpp b/lldb/source/Target/UnwindAssembly.cpp
index 3a87e3da5bca..75f2b328cef8 100644
--- a/lldb/source/Target/UnwindAssembly.cpp
+++ b/lldb/source/Target/UnwindAssembly.cpp
@@ -29,5 +29,3 @@ UnwindAssemblySP UnwindAssembly::FindPlugin(const ArchSpec &arch) {
 }
 
 UnwindAssembly::UnwindAssembly(const ArchSpec &arch) : m_arch(arch) {}
-
-UnwindAssembly::~UnwindAssembly() = default;


        


More information about the lldb-commits mailing list