with Ada.Text_Io; procedure Day is type Day is ( Mon, Tue, Thu, Fri, Sat, Sun ); subtype Weekday is Day range Mon .. Fri; X, Y : Day; begin X := Fri; Ada.Text_Io.Put (Day'Image(X)); Y := Day'Succ(X); Ada.Text_Io.Put (Day'Image(Y)); end Day;
mit Bereichsprüfung bei jeder Zuweisung.
einige Tests können aber vom Compiler statisch ausgeführt werden!