If the value is outside the range of the demoted type the behavior is undefined.

 (Extrapolate, 6.3.1.5.2)