[clang-tools-extra] d9e5462 - [clang-pseudo] Forest.h - don't inherit from std::iterator
Simon Pilgrim via cfe-commits
cfe-commits at lists.llvm.org
Tue Aug 9 02:19:25 PDT 2022
Author: Simon Pilgrim
Date: 2022-08-09T10:18:53+01:00
New Revision: d9e5462da61c3e2137a21a868a36f7022a39b59e
URL: https://github.com/llvm/llvm-project/commit/d9e5462da61c3e2137a21a868a36f7022a39b59e
DIFF: https://github.com/llvm/llvm-project/commit/d9e5462da61c3e2137a21a868a36f7022a39b59e.diff
LOG: [clang-pseudo] Forest.h - don't inherit from std::iterator
Now that we've updated to C++17 MSVC gives very verbose warnings about not creating classes that inherit from std::iterator - use llvm::iterator_facade_base instead
Fixes #57005
Added:
Modified:
clang-tools-extra/pseudo/include/clang-pseudo/Forest.h
Removed:
################################################################################
diff --git a/clang-tools-extra/pseudo/include/clang-pseudo/Forest.h b/clang-tools-extra/pseudo/include/clang-pseudo/Forest.h
index ef9a222faf6bf..130cf1ac7ef1a 100644
--- a/clang-tools-extra/pseudo/include/clang-pseudo/Forest.h
+++ b/clang-tools-extra/pseudo/include/clang-pseudo/Forest.h
@@ -199,7 +199,9 @@ class ForestArena {
};
class ForestNode::RecursiveIterator
- : public std::iterator<std::input_iterator_tag, const ForestNode> {
+ : public llvm::iterator_facade_base<ForestNode::RecursiveIterator,
+ std::input_iterator_tag,
+ const ForestNode> {
llvm::DenseSet<const ForestNode *> Seen;
struct StackFrame {
const ForestNode *Parent;
More information about the cfe-commits
mailing list