Minor tweak to support format attribute on blocks. No change in functionality.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72020 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDeclAttr.cpp b/lib/Sema/SemaDeclAttr.cpp
index 1cdca22..2c2e4d3 100644
--- a/lib/Sema/SemaDeclAttr.cpp
+++ b/lib/Sema/SemaDeclAttr.cpp
@@ -24,7 +24,7 @@
// Helper functions
//===----------------------------------------------------------------------===//
-static const FunctionType *getFunctionType(Decl *d) {
+static const FunctionType *getFunctionType(Decl *d, bool blocksToo = true) {
QualType Ty;
if (ValueDecl *decl = dyn_cast<ValueDecl>(d))
Ty = decl->getType();
@@ -37,7 +37,7 @@
if (Ty->isFunctionPointerType())
Ty = Ty->getAsPointerType()->getPointeeType();
- else if (Ty->isBlockPointerType())
+ else if (blocksToo && Ty->isBlockPointerType())
Ty = Ty->getAsBlockPointerType()->getPointeeType();
return Ty->getAsFunctionType();
@@ -50,7 +50,7 @@
/// type (function or function-typed variable) or an Objective-C
/// method.
static bool isFunctionOrMethod(Decl *d) {
- return getFunctionType(d) || isa<ObjCMethodDecl>(d);
+ return getFunctionType(d, false) || isa<ObjCMethodDecl>(d);
}
/// isFunctionOrMethodOrBlock - Return true if the given decl has function