[Lldb-commits] [PATCH] D134844: [lldb] Fix deprecation warning for using std::iterator
Nico Weber via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed Sep 28 17:19:40 PDT 2022
thakis created this revision.
thakis added a reviewer: labath.
Herald added a project: All.
thakis requested review of this revision.
std::iterator was deprecated in C++17.
https://reviews.llvm.org/D134844
Files:
lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
Index: lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
===================================================================
--- lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
+++ lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
@@ -14,6 +14,8 @@
#include "DWARFDeclContext.h"
#include "DWARFUnit.h"
+#include "llvm/ADT/iterator.h"
+
using namespace lldb_private;
using namespace lldb_private::dwarf;
@@ -24,7 +26,9 @@
/// convenience, the starting die is included in the sequence as the first
/// item.
class ElaboratingDIEIterator
- : public std::iterator<std::input_iterator_tag, DWARFDIE> {
+ : public llvm::iterator_facade_base<
+ ElaboratingDIEIterator, std::input_iterator_tag, DWARFDIE,
+ std::ptrdiff_t, DWARFDIE *, DWARFDIE *> {
// The operating invariant is: top of m_worklist contains the "current" item
// and the rest of the list are items yet to be visited. An empty worklist
@@ -62,11 +66,6 @@
Next();
return *this;
}
- ElaboratingDIEIterator operator++(int) {
- ElaboratingDIEIterator I = *this;
- Next();
- return I;
- }
friend bool operator==(const ElaboratingDIEIterator &a,
const ElaboratingDIEIterator &b) {
@@ -74,10 +73,6 @@
return a.m_worklist.empty() == b.m_worklist.empty();
return a.m_worklist.back() == b.m_worklist.back();
}
- friend bool operator!=(const ElaboratingDIEIterator &a,
- const ElaboratingDIEIterator &b) {
- return !(a == b);
- }
};
llvm::iterator_range<ElaboratingDIEIterator>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D134844.463723.patch
Type: text/x-patch
Size: 1572 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20220929/388e1ac3/attachment.bin>
More information about the lldb-commits
mailing list