8 Expressions [expr]

8.15 Logical OR operator [expr.log.or]

logical-or-expression:
	logical-and-expression
	logical-or-expression || logical-and-expression
The || operator groups left-to-right.
The operands are both contextually converted to bool.
It returns true if either of its operands is true, and false otherwise.
Unlike |, || guarantees left-to-right evaluation; moreover, the second operand is not evaluated if the first operand evaluates to true.
The result is a bool.
If the second expression is evaluated, every value computation and side effect associated with the first expression is sequenced before every value computation and side effect associated with the second expression.