From 4775ce56ec52f9cfbc6ec1ec263d85054d69d192 Mon Sep 17 00:00:00 2001 From: Haojian Wu Date: Tue, 17 Jan 2017 13:22:37 +0000 Subject: [clang-move] Handle helpers with forward declarations. Reviewers: ioeric Reviewed By: ioeric Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D28801 llvm-svn: 292215 --- clang-tools-extra/clang-move/HelperDeclRefGraph.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'clang-tools-extra/clang-move/HelperDeclRefGraph.cpp') diff --git a/clang-tools-extra/clang-move/HelperDeclRefGraph.cpp b/clang-tools-extra/clang-move/HelperDeclRefGraph.cpp index 8303015171e..00ab9ea651f 100644 --- a/clang-tools-extra/clang-move/HelperDeclRefGraph.cpp +++ b/clang-tools-extra/clang-move/HelperDeclRefGraph.cpp @@ -10,8 +10,11 @@ #include "HelperDeclRefGraph.h" #include "ClangMove.h" #include "clang/AST/Decl.h" +#include "llvm/Support/Debug.h" #include +#define DEBUG_TYPE "clang-move" + namespace clang { namespace move { @@ -113,13 +116,19 @@ void HelperDeclRGBuilder::run( if (const auto *FuncRef = Result.Nodes.getNodeAs("func_ref")) { const auto *DC = Result.Nodes.getNodeAs("dc"); assert(DC); - - RG->addEdge(getOutmostClassOrFunDecl(DC->getCanonicalDecl()), - getOutmostClassOrFunDecl(FuncRef->getDecl())); + DEBUG(llvm::dbgs() << "Find helper function usage: " + << FuncRef->getDecl()->getNameAsString() << " (" + << FuncRef->getDecl() << ")\n"); + RG->addEdge( + getOutmostClassOrFunDecl(DC->getCanonicalDecl()), + getOutmostClassOrFunDecl(FuncRef->getDecl()->getCanonicalDecl())); } else if (const auto *UsedClass = Result.Nodes.getNodeAs("used_class")) { const auto *DC = Result.Nodes.getNodeAs("dc"); assert(DC); + DEBUG(llvm::dbgs() << "Find helper class usage: " + << UsedClass->getNameAsString() << " (" << UsedClass + << ")\n"); RG->addEdge(getOutmostClassOrFunDecl(DC->getCanonicalDecl()), UsedClass); } } -- cgit v1.2.3