diff options
author | Douglas Gregor <dgregor@apple.com> | 2010-12-07 00:41:46 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2010-12-07 00:41:46 +0000 |
commit | 53c374f1ac6d28b2341b3a8f3902eb51db9c50e7 (patch) | |
tree | 2dc0bb930ae69f39eab9365e38cdde5bb927d307 /lib/Sema/SemaDecl.cpp | |
parent | 7ee90d0d9ecd6010bb6c7ad252d04b32f07877d5 (diff) |
Use Sema::MaybeCreateExprWithCleanups() only after we've checked for a NULL/invalid expression
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121081 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaDecl.cpp')
-rw-r--r-- | lib/Sema/SemaDecl.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp index aa2e2a53d6..88512af8b3 100644 --- a/lib/Sema/SemaDecl.cpp +++ b/lib/Sema/SemaDecl.cpp @@ -3037,7 +3037,7 @@ Sema::ActOnVariableDeclarator(Scope *S, Declarator &D, DeclContext *DC, SourceLocation(), Owned(E)); if (!Res.isInvalid()) { - Res = MaybeCreateExprWithCleanups(Res.get()); + Res = MaybeCreateExprWithCleanups(Res); Expr *Init = Res.takeAs<Expr>(); Context.setBlockVarCopyInits(NewVD, Init); } @@ -4805,7 +4805,7 @@ void Sema::ActOnUninitializedDecl(Decl *RealDecl, if (Init.isInvalid()) Var->setInvalidDecl(); else if (Init.get()) { - Var->setInit(MaybeCreateExprWithCleanups(Init.takeAs<Expr>())); + Var->setInit(MaybeCreateExprWithCleanups(Init.get())); if (getLangOptions().CPlusPlus && !Var->isInvalidDecl() && Var->hasGlobalStorage() && !Var->isStaticLocal() && |