C++11: Don't fail on = default and = delete initializers.

These are converted to IdExpr(SimpleName(token)) initializers.

Change-Id: I1e85c4b261ca028dc75ffe6c00e1090630c2957c
Reviewed-by: hjk <qthjk@ovi.com>
This commit is contained in:
Christian Kamm
2012-09-12 14:42:40 +02:00
committed by hjk
parent 0bdf1dc406
commit 903ba378c2
4 changed files with 31 additions and 4 deletions

View File

@@ -1901,7 +1901,10 @@ bool Bind::visit(SimpleDeclarationAST *ast)
if (Function *funTy = decl->type()->asFunctionType()) {
funTy->setMethodKey(methodKey);
if (funTy->isVirtual() && it->value->equal_token)
bool pureVirtualInit = it->value->equal_token
&& it->value->initializer
&& it->value->initializer->asNumericLiteral();
if (funTy->isVirtual() && pureVirtualInit)
funTy->setPureVirtual(true);
}
}