Kaydet (Commit) d5912563 authored tarafından Noel Grandin's avatar Noel Grandin

update unusedmethods plugin to ignore externC and copy constructors

Change-Id: Idf7a9403d313ba6a0e031c59601e20c880b6118b
üst 48d0affa
...@@ -212,7 +212,9 @@ void UnusedMethods::logCallToRootMethods(const FunctionDecl* functionDecl, std:: ...@@ -212,7 +212,9 @@ void UnusedMethods::logCallToRootMethods(const FunctionDecl* functionDecl, std::
{ {
while (functionDecl->getTemplateInstantiationPattern()) while (functionDecl->getTemplateInstantiationPattern())
functionDecl = functionDecl->getTemplateInstantiationPattern(); functionDecl = functionDecl->getTemplateInstantiationPattern();
funcSet.insert(niceName(functionDecl)); if (functionDecl->getLocation().isValid() && !ignoreLocation( functionDecl )
&& !functionDecl->isExternC())
funcSet.insert(niceName(functionDecl));
} }
} }
...@@ -348,8 +350,12 @@ bool UnusedMethods::VisitFunctionDecl( const FunctionDecl* functionDecl ) ...@@ -348,8 +350,12 @@ bool UnusedMethods::VisitFunctionDecl( const FunctionDecl* functionDecl )
if (functionDecl->isDeleted() || functionDecl->isDefaulted()) { if (functionDecl->isDeleted() || functionDecl->isDefaulted()) {
return true; return true;
} }
if (isa<CXXConstructorDecl>(functionDecl) && dyn_cast<CXXConstructorDecl>(functionDecl)->isCopyConstructor()) {
return true;
}
if( functionDecl->getLocation().isValid() && !ignoreLocation( functionDecl )) if( functionDecl->getLocation().isValid() && !ignoreLocation( functionDecl )
&& !functionDecl->isExternC())
{ {
MyFuncInfo funcInfo = niceName(functionDecl); MyFuncInfo funcInfo = niceName(functionDecl);
definitionSet.insert(funcInfo); definitionSet.insert(funcInfo);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment