[Lldb-commits] [lldb] 5e9f0e3 - [lldb][ObjC][NFC] Fix c++20 gcc compile errors
David Spickett via lldb-commits
lldb-commits at lists.llvm.org
Fri Jan 26 03:38:01 PST 2024
Author: David Spickett
Date: 2024-01-26T11:37:50Z
New Revision: 5e9f0e37494ab42ff8d850527c5517f3006e63e9
URL: https://github.com/llvm/llvm-project/commit/5e9f0e37494ab42ff8d850527c5517f3006e63e9
DIFF: https://github.com/llvm/llvm-project/commit/5e9f0e37494ab42ff8d850527c5517f3006e63e9.diff
LOG: [lldb][ObjC][NFC] Fix c++20 gcc compile errors
When compiling with gcc 11+ and -DCMAKE_CXX_STANDARD=20, errors
like the following happened:
```
llvm-project/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp:1063:5: error: template-id not allowed for destructor
1063 | ~GenericNSDictionaryMSyntheticFrontEnd<D32,D64>() {
| ^
```
This appears to be something only gcc enforces and only from 11 and beyond.
This changes fixes all the instances of this pattern by removing the
template arguments.
Added:
Modified:
lldb/source/Plugins/Language/ObjC/NSArray.cpp
lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
lldb/source/Plugins/Language/ObjC/NSSet.cpp
Removed:
################################################################################
diff --git a/lldb/source/Plugins/Language/ObjC/NSArray.cpp b/lldb/source/Plugins/Language/ObjC/NSArray.cpp
index bd356a61161a537..963983c7ffcae12 100644
--- a/lldb/source/Plugins/Language/ObjC/NSArray.cpp
+++ b/lldb/source/Plugins/Language/ObjC/NSArray.cpp
@@ -548,9 +548,8 @@ lldb_private::formatters::NSArrayMSyntheticFrontEndBase::GetIndexOfChildWithName
}
template <typename D32, typename D64>
-lldb_private::formatters::
- GenericNSArrayMSyntheticFrontEnd<D32, D64>::
- ~GenericNSArrayMSyntheticFrontEnd<D32, D64>() {
+lldb_private::formatters::GenericNSArrayMSyntheticFrontEnd<
+ D32, D64>::~GenericNSArrayMSyntheticFrontEnd() {
delete m_data_32;
m_data_32 = nullptr;
delete m_data_64;
@@ -615,8 +614,8 @@ lldb_private::formatters::GenericNSArrayISyntheticFrontEnd<D32, D64, Inline>::
}
template <typename D32, typename D64, bool Inline>
-lldb_private::formatters::GenericNSArrayISyntheticFrontEnd<D32, D64, Inline>::
- ~GenericNSArrayISyntheticFrontEnd<D32, D64, Inline>() {
+lldb_private::formatters::GenericNSArrayISyntheticFrontEnd<
+ D32, D64, Inline>::~GenericNSArrayISyntheticFrontEnd() {
delete m_data_32;
m_data_32 = nullptr;
delete m_data_64;
diff --git a/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp b/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
index 5ae0751cb065f32..18c97dd933b3bf8 100644
--- a/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
+++ b/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
@@ -1059,8 +1059,8 @@ lldb_private::formatters::GenericNSDictionaryMSyntheticFrontEnd<D32, D64>::
m_data_32(nullptr), m_data_64(nullptr), m_pair_type() {}
template <typename D32, typename D64>
-lldb_private::formatters::GenericNSDictionaryMSyntheticFrontEnd<D32,D64>::
- ~GenericNSDictionaryMSyntheticFrontEnd<D32,D64>() {
+lldb_private::formatters::GenericNSDictionaryMSyntheticFrontEnd<
+ D32, D64>::~GenericNSDictionaryMSyntheticFrontEnd() {
delete m_data_32;
m_data_32 = nullptr;
delete m_data_64;
diff --git a/lldb/source/Plugins/Language/ObjC/NSSet.cpp b/lldb/source/Plugins/Language/ObjC/NSSet.cpp
index 44097ee0c42b855..6917f23b10ca690 100644
--- a/lldb/source/Plugins/Language/ObjC/NSSet.cpp
+++ b/lldb/source/Plugins/Language/ObjC/NSSet.cpp
@@ -671,8 +671,8 @@ lldb_private::formatters::GenericNSSetMSyntheticFrontEnd<
}
template <typename D32, typename D64>
-lldb_private::formatters::
- GenericNSSetMSyntheticFrontEnd<D32, D64>::~GenericNSSetMSyntheticFrontEnd<D32, D64>() {
+lldb_private::formatters::GenericNSSetMSyntheticFrontEnd<
+ D32, D64>::~GenericNSSetMSyntheticFrontEnd() {
delete m_data_32;
m_data_32 = nullptr;
delete m_data_64;
More information about the lldb-commits
mailing list