Binary floating-point promotion is a special case of binary numeric promotion. It is applied to the operands of the exponentiation operator:
If either operand is of type
the other is converted to
double by a widening
Otherwise, both operands are converted to
float by a widening conversion.
After the type conversion, if any, value set conversion is applied to each operand.