Author: kremenek
Date: Mon Oct 1 23:36:54 2012
New Revision: 164988
URL: http://llvm.org/viewvc/llvm-project?rev=164988&view=rev
Log:
Check if an IdentifierInfo* is null when the FunctionDecl isn't a simple C
function.
Fixes <rdar://problem/12355298>
Modified:
cfe/trunk/lib/Sema/SemaChecking.cpp
Modified: cfe/trunk/lib/Sema/SemaChecking.cpp
URL:
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaChecking.cpp?rev=164988&r1=164987&r2=164988&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaChecking.cpp (original)
+++ cfe/trunk/lib/Sema/SemaChecking.cpp Mon Oct 1 23:36:54 2012
@@ -5510,8 +5510,12 @@
} else if (CallExpr *CE = dyn_cast<CallExpr>(e)) {
if (CE->getNumArgs() == 1) {
FunctionDecl *Fn = dyn_cast_or_null<FunctionDecl>(CE->getCalleeDecl());
- if (Fn && Fn->getIdentifier()->isStr("_Block_copy"))
- e = CE->getArg(0)->IgnoreParenCasts();
+ if (Fn) {
+ const IdentifierInfo *FnI = Fn->getIdentifier();
+ if (FnI && FnI->isStr("_Block_copy")) {
+ e = CE->getArg(0)->IgnoreParenCasts();
+ }
+ }
}
}
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits