Author: David Spickett
Date: 2026-07-17T13:18:25Z
New Revision: de4f929700f8d87041e0b050ec6028f0ac5276ad

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

LOG: [lldb][x86] Remove GCC 6 workaround (#210317)

Added by 3bea7306e8669f94bacafae68748a9139cfc0b98.

We now require GCC >= 7.4 so it can be removed.

I tested a standalone reproducer with GCC 7.3 and
clang 5. Neither have the problem.

https://godbolt.org/z/3zKrT9c8s

Standalone reproducer:
```
 struct Base {
   Base(int) {}
 };

 struct Derived : virtual Base {
 #ifdef WORKAROUND
     Derived(int a): Base(a) {}
 #endif
   virtual void g() = 0;
 };

 struct Final : Derived {
   Final(int n) : Base(n)
 #ifdef WORKAROUND
   , Derived(n)
 #endif
   {}
   void g() override {}
 };
```

Added: 
    

Modified: 
    lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
    lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h

Removed: 
    


################################################################################
diff  --git 
a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp 
b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
index 67a79566f6f6d..a7af62e89c1dc 100644
--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
+++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
@@ -300,7 +300,6 @@ 
NativeRegisterContextLinux_x86::NativeRegisterContextLinux_x86(
     : NativeRegisterContextRegisterInfo(
           native_thread, CreateRegisterInfoInterface(target_arch).release()),
       NativeRegisterContextLinux(native_thread),
-      NativeRegisterContextDBReg_x86(native_thread),
       m_xstate_type(XStateType::Invalid), m_ymm_set(), m_mpx_set(),
       m_reg_info(), m_gpr_x86_64() {
   // Set up data about ranges of valid registers.

diff  --git 
a/lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h 
b/lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h
index 2fdf5000f751c..8a2c1a1dbcbe1 100644
--- a/lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h
+++ b/lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h
@@ -16,12 +16,6 @@ namespace lldb_private {
 class NativeRegisterContextDBReg_x86
     : public virtual NativeRegisterContextRegisterInfo {
 public:
-  // NB: This constructor is here only because gcc<=6.5 requires a virtual base
-  // class initializer on abstract class (even though it is never used). It can
-  // be deleted once we move to gcc>=7.0.
-  NativeRegisterContextDBReg_x86(NativeThreadProtocol &thread)
-      : NativeRegisterContextRegisterInfo(thread, nullptr) {}
-
   Status IsWatchpointHit(uint32_t wp_index, bool &is_hit) override;
 
   Status GetWatchpointHitIndex(uint32_t &wp_index,


        
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to