The passing of conditionality up and down the stack via references is weirding me out, but I think I've convinced myself it's correct. You still need a test case with a block expr, though. I'll try to look this over one more time this afternoon or evening. http://reviews.llvm.org/D3627