summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitaly Buka <vitalybuka@google.com>2016-12-05 19:25:00 +0000
committerVitaly Buka <vitalybuka@google.com>2016-12-05 19:25:00 +0000
commit846b8f79d4c8f7b395eba40b701fb168406b1416 (patch)
tree1e33f0f6ad4e87180259ec04796cfb29822b359d
parent0e6cccfb53f66749ddd871c507e081f9694fbb8d (diff)
downloadbcm5719-llvm-846b8f79d4c8f7b395eba40b701fb168406b1416.tar.gz
bcm5719-llvm-846b8f79d4c8f7b395eba40b701fb168406b1416.zip
Fix stack-use-after-scope in CheckExplicitlyDefaultedMemberExceptionSpec
Summary: Similar to r288685. getExceptionSpec returned structure with pointers to temporarily object created by computeImplicitExceptionSpec. Reviewers: rsmith Subscribers: aizatsky, cfe-commits Differential Revision: https://reviews.llvm.org/D27422 llvm-svn: 288689
-rw-r--r--clang/lib/Sema/SemaDeclCXX.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp
index f5a2c0dd4db..6ccb3c5216b 100644
--- a/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/clang/lib/Sema/SemaDeclCXX.cpp
@@ -6299,8 +6299,8 @@ void Sema::CheckExplicitlyDefaultedMemberExceptionSpec(
CallingConv CC = Context.getDefaultCallingConvention(/*IsVariadic=*/false,
/*IsCXXMethod=*/true);
FunctionProtoType::ExtProtoInfo EPI(CC);
- EPI.ExceptionSpec = computeImplicitExceptionSpec(*this, MD->getLocation(), MD)
- .getExceptionSpec();
+ auto IES = computeImplicitExceptionSpec(*this, MD->getLocation(), MD);
+ EPI.ExceptionSpec = IES.getExceptionSpec();
const FunctionProtoType *ImplicitType = cast<FunctionProtoType>(
Context.getFunctionType(Context.VoidTy, None, EPI));
OpenPOWER on IntegriCloud