This fixes an assertion error when writing a coroutine with a function-try-block. In this case the function body is not a CompoundStmt so the code constructing an artificial CXXTryStmt must also construct a CompoundStmt for it.
While on it adjust the CXXStmt::Create function to only accept CompoundStmt*.
It reads better to specify the potential type for Body.