Enable loplugin:dynexcspec rewriting mode
Change-Id: I73404287c387a36e224683f75e967d51d911175b
This commit is contained in:
@@ -58,9 +58,23 @@ public:
|
|||||||
" no corresponding documentation comment"),
|
" no corresponding documentation comment"),
|
||||||
decl->getLocation())
|
decl->getLocation())
|
||||||
<< decl->getSourceRange();
|
<< decl->getSourceRange();
|
||||||
|
}
|
||||||
|
if (rewriter != nullptr) {
|
||||||
|
if (!(decl->isDefined() || decl->isPure())) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
#if 0 // will be enabled later
|
if (auto m = dyn_cast<CXXMethodDecl>(decl)) {
|
||||||
|
for (auto i = m->begin_overridden_methods();
|
||||||
|
i != m->end_overridden_methods(); ++i)
|
||||||
|
{
|
||||||
|
auto proto2 = (*i)->getType()->getAs<FunctionProtoType>();
|
||||||
|
assert(proto2 != nullptr);
|
||||||
|
if (proto2->getExceptionSpecType() == EST_Dynamic) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
bool dtor = isa<CXXDestructorDecl>(decl);
|
bool dtor = isa<CXXDestructorDecl>(decl);
|
||||||
auto source = decl->getExceptionSpecSourceRange();
|
auto source = decl->getExceptionSpecSourceRange();
|
||||||
if (rewriter != nullptr && source.isValid()) {
|
if (rewriter != nullptr && source.isValid()) {
|
||||||
@@ -93,6 +107,9 @@ public:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!s.empty() && s != "\\") {
|
if (!s.empty() && s != "\\") {
|
||||||
|
if (s.startswith("//")) {
|
||||||
|
beg = source.getBegin();
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
beg = prev;
|
beg = prev;
|
||||||
@@ -110,7 +127,6 @@ public:
|
|||||||
: "remove dynamic exception specification"),
|
: "remove dynamic exception specification"),
|
||||||
source.isValid() ? source.getBegin() : decl->getLocation())
|
source.isValid() ? source.getBegin() : decl->getLocation())
|
||||||
<< (source.isValid() ? source : decl->getSourceRange());
|
<< (source.isValid() ? source : decl->getSourceRange());
|
||||||
#endif
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user