5.6.9 Operator Expressions

There are two kinds of operators. Unary operators take one operand and use prefix notation (for example, –x). Binary operators take two operands and use infix notation (for example, x + y). With the exception of the relational operators, which result in Boolean, an operator defined for a particular type results in that type. The operands to an operator MUST be classified as a value; the result of an operator expression is classified as a value.

 operator-expression = arithmetic-operator-expression / concatenation-operator-expression / relational-operator-expression / like-operator-expression / is-operator-expression / logical-operator-expression

Static semantics. An operator expression is classified as a value.