summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2015-09-10 00:57:46 +0000
committerJohn McCall <rjmccall@apple.com>2015-09-10 00:57:46 +0000
commit9a2c1c96038bdb2f2d0cd25f93418856beb0a924 (patch)
tree1ec5e4f5ee8082bc4e91194d953f11f7439cdb93 /clang/lib
parenta865b80c5a0dfd086b28da21d8bc03ea7fdc1385 (diff)
downloadbcm5719-llvm-9a2c1c96038bdb2f2d0cd25f93418856beb0a924.tar.gz
bcm5719-llvm-9a2c1c96038bdb2f2d0cd25f93418856beb0a924.zip
Don't crash when emitting a block under returns_nonnull.
rdar://22071955 llvm-svn: 247228
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/CodeGen/CGCall.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGCall.cpp b/clang/lib/CodeGen/CGCall.cpp
index 344d06ba668..2f50b85e9db 100644
--- a/clang/lib/CodeGen/CGCall.cpp
+++ b/clang/lib/CodeGen/CGCall.cpp
@@ -2440,8 +2440,8 @@ void CodeGenFunction::EmitFunctionEpilog(const CGFunctionInfo &FI,
llvm::Instruction *Ret;
if (RV) {
- if (SanOpts.has(SanitizerKind::ReturnsNonnullAttribute)) {
- if (auto RetNNAttr = CurGD.getDecl()->getAttr<ReturnsNonNullAttr>()) {
+ if (CurCodeDecl && SanOpts.has(SanitizerKind::ReturnsNonnullAttribute)) {
+ if (auto RetNNAttr = CurCodeDecl->getAttr<ReturnsNonNullAttr>()) {
SanitizerScope SanScope(this);
llvm::Value *Cond = Builder.CreateICmpNE(
RV, llvm::Constant::getNullValue(RV->getType()));
OpenPOWER on IntegriCloud