logical-or-expression || logical-and-expression
operator groups left-to-right.
The result is
if either of its operands is true
left-to-right evaluation; moreover, the second operand is not evaluated
if the first operand evaluates to true.
If the second expression is evaluated, every
value computation and
associated with the first expression is sequenced before every value computation
and side effect associated with the second expression.