]> granicus.if.org Git - clang/commit
CodeGen: Base the conditional cleanup machinery on variadic templates
authorBenjamin Kramer <benny.kra@googlemail.com>
Thu, 12 Mar 2015 23:41:40 +0000 (23:41 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Thu, 12 Mar 2015 23:41:40 +0000 (23:41 +0000)
commit97d2f22e99206f772e504c2815cefde2c1b6e9fa
tree78c91ed6deac83428ad8875523d1d08d0e895578
parente187547b722ada5d87a4c53ed61dd1b64775b6bc
CodeGen: Base the conditional cleanup machinery on variadic templates

This is complicated by the fact that we can't simply use side-effecting
calls in an argument list without losing all guarantees about the order
they're emitted. To keep things deterministic we use tuples and brace
initialization, which thankfully guarantees evaluation order.

No functionality change intended.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@232121 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CodeGenFunction.h
lib/CodeGen/EHScopeStack.h