Reid, > __try body outlining with noinline and optnone. You can use CapturedStmt for body outlining. It works just like Lambdas, but all captured vars are passed by reference http://reviews.llvm.org/D5607