Dieses "case Integer of ..." ist von der Syntax irgendwie eines der ... merkwürdigsten Sachen in Pascal, finde ich.
Gibt es aber schon seit Anbeginn aller Pascal-Zeiten!
Häufig gibt es zu diesem Typ auch eine Variable, also ein Feld in dem Record (das
tag field), um festzulegen, welcher Variantentyp gerade in dem Record steht. Aber man kann das eben auch weglassen.