Don't trigger assert in clang::ParmVarDecl::getDefaultArg

Change-Id: Ica385b513d87d639496ac470da296e871b093ab4
This commit is contained in:
Stephan Bergmann
2015-08-14 12:19:55 +02:00
parent 9d094b9f0a
commit 65aa35fbee

View File

@@ -52,9 +52,13 @@ bool DefaultParams::VisitCallExpr(CallExpr * callExpr) {
if (isa<UnaryExprOrTypeTraitExpr>(arg))
return true;
const ParmVarDecl* parmVarDecl = functionDecl->getParamDecl(i);
if (!parmVarDecl->hasDefaultArg()
|| parmVarDecl->hasUninstantiatedDefaultArg())
{
return true;
}
const Expr* defaultArgExpr = parmVarDecl->getDefaultArg();
if (parmVarDecl->hasDefaultArg() &&
defaultArgExpr &&
if (defaultArgExpr &&
defaultArgExpr->getType()->isIntegralType(compiler.getASTContext()))
{
APSInt x1, x2;