From: Tim Shen Date: Mon, 15 Aug 2016 21:27:56 +0000 (+0000) Subject: [ADT] Change PostOrderIterator to use NodeRef. NFC. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=836da9f5b05ef4fd9d24d4fce64a4a3e22720196;p=clang [ADT] Change PostOrderIterator to use NodeRef. NFC. Summary: Corresponding LLVM change: D23522 Reviewers: dblaikie Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D23523 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@278746 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Analysis/CFG.h b/include/clang/Analysis/CFG.h index 293990c88e..02fbf37e9f 100644 --- a/include/clang/Analysis/CFG.h +++ b/include/clang/Analysis/CFG.h @@ -999,6 +999,7 @@ template <> struct simplify_type< ::clang::CFGTerminator> { template <> struct GraphTraits< ::clang::CFGBlock *> { typedef ::clang::CFGBlock NodeType; + typedef ::clang::CFGBlock *NodeRef; typedef ::clang::CFGBlock::succ_iterator ChildIteratorType; static NodeType* getEntryNode(::clang::CFGBlock *BB) @@ -1013,6 +1014,7 @@ template <> struct GraphTraits< ::clang::CFGBlock *> { template <> struct GraphTraits< const ::clang::CFGBlock *> { typedef const ::clang::CFGBlock NodeType; + typedef const ::clang::CFGBlock *NodeRef; typedef ::clang::CFGBlock::const_succ_iterator ChildIteratorType; static NodeType* getEntryNode(const clang::CFGBlock *BB) @@ -1027,6 +1029,7 @@ template <> struct GraphTraits< const ::clang::CFGBlock *> { template <> struct GraphTraits > { typedef ::clang::CFGBlock NodeType; + typedef ::clang::CFGBlock *NodeRef; typedef ::clang::CFGBlock::const_pred_iterator ChildIteratorType; static NodeType *getEntryNode(Inverse< ::clang::CFGBlock*> G) @@ -1041,6 +1044,7 @@ template <> struct GraphTraits > { template <> struct GraphTraits > { typedef const ::clang::CFGBlock NodeType; + typedef const ::clang::CFGBlock *NodeRef; typedef ::clang::CFGBlock::const_pred_iterator ChildIteratorType; static NodeType *getEntryNode(Inverse G) diff --git a/include/clang/Analysis/CallGraph.h b/include/clang/Analysis/CallGraph.h index eda22a57e8..241ecd54d3 100644 --- a/include/clang/Analysis/CallGraph.h +++ b/include/clang/Analysis/CallGraph.h @@ -172,6 +172,7 @@ public: namespace llvm { template <> struct GraphTraits { typedef clang::CallGraphNode NodeType; + typedef clang::CallGraphNode *NodeRef; typedef clang::CallGraphNode::CallRecord CallRecordTy; typedef std::pointer_to_unary_function CGNDerefFun; @@ -190,6 +191,7 @@ template <> struct GraphTraits { template <> struct GraphTraits { typedef const clang::CallGraphNode NodeType; + typedef const clang::CallGraphNode *NodeRef; typedef NodeType::const_iterator ChildIteratorType; static NodeType *getEntryNode(const clang::CallGraphNode *CGN) { return CGN; } static inline ChildIteratorType child_begin(NodeType *N) { return N->begin();}