6.8.2.2 For an assignment-statement, it is an error if the expression is of an ordinal-type whose value is not assignment-compatible with the type possessed by the variable or function-identifier.
In other words, it is an error to assign an out-of-range ordinal value to a variable or a function result.
This error is reported if range checking is enabled.