6 Statements [stmt.stmt]

6.5 Iteration statements [stmt.iter]

6.5.2 The do statement [stmt.do]

The expression is contextually converted to bool (Clause [conv]); if that conversion is ill-formed, the program is ill-formed.

In the do statement the substatement is executed repeatedly until the value of the expression becomes false. The test takes place after each execution of the statement.