Index: cfe/trunk/include/clang/Analysis/CFG.h =================================================================== --- cfe/trunk/include/clang/Analysis/CFG.h +++ cfe/trunk/include/clang/Analysis/CFG.h @@ -999,6 +999,7 @@ 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< 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 > { 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 > { typedef const ::clang::CFGBlock NodeType; + typedef const ::clang::CFGBlock *NodeRef; typedef ::clang::CFGBlock::const_pred_iterator ChildIteratorType; static NodeType *getEntryNode(Inverse G) Index: cfe/trunk/include/clang/Analysis/CallGraph.h =================================================================== --- cfe/trunk/include/clang/Analysis/CallGraph.h +++ cfe/trunk/include/clang/Analysis/CallGraph.h @@ -172,6 +172,7 @@ 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 { 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();}