Do statements

For a do statement stmt of the form: do do-body while (expr); v has the same definite assignment state on the control flow transfer from the beginning of stmt to do-body as at the beginning of stmt. v has the same definite assignment state at the beginning of expr as at the end point of do-body. If v is definitely assigned at the end of expr, then it is definitely assigned on the end point of stmt. If v has the state "definitely assigned after false expression" at the end of expr, then it is definitely assigned on the control flow transfer to the end point of stmt.