During jump-scope checking, build an ExprWithCleanups immediately
authorJohn McCall <rjmccall@apple.com>
Tue, 25 Sep 2012 06:56:03 +0000 (06:56 +0000)
committerJohn McCall <rjmccall@apple.com>
Tue, 25 Sep 2012 06:56:03 +0000 (06:56 +0000)
commitb0433eeb2e536e21a62030fd2f17d94ad2a1d2f5
tree3b0fba774252c9e3043a44518153aa21b131efcd
parent446ff28df1242fcd11ce1df18af9c944afdcbdd3
During jump-scope checking, build an ExprWithCleanups immediately
into the enclosing scope;  this is a more accurate model but is
(I believe) unnecessary in my test case due to other flaws.
However, one of those flaws is now intentional:  blocks which
appear in return statements can be trivially observed to not
extend in lifetime past the return, and so we can allow a jump
past them.  Do the necessary magic in IR-generation to make
this work.

llvm-svn: 164589
clang/lib/CodeGen/CGStmt.cpp
clang/lib/Sema/JumpDiagnostics.cpp
clang/test/CodeGenCXX/exceptions.cpp
clang/test/CodeGenObjC/arc-blocks.m