Unter Lazarus läuft das bei mir ohne Probleme (bei 22345678 dann nicht mehr

).
Aber so etwas passiert einem ja seltener aus Versehen.
Zusammen mit (gewollter) Rekursion könnte bestimmt schon bei kleineren Variablen interessant werden.
Damit das Problem hier nicht so kommentarlos rumsteht:
Eine Lösung wäre dann, das Array auf dem Heap anzulegen oder dafür zu sorgen, dass der Compiler das macht (zB. dynamisches Array).