RM 3 5 5 8 Enumeration Values (GNAT Reference Manual)

### 6.9 RM 3.5.5(8): Enumeration Values ¶

> “For the evaluation of a call on `S'Pos` for an enumeration subtype, if the value of the operand does not correspond to the internal code for any enumeration literal of its type (perhaps due to an un-initialized variable), then the implementation should raise `Program_Error`. This is particularly important for enumeration types with noncontiguous internal codes specified by an enumeration_representation_clause.”

Followed.