Hast du recht. Delphi bricht tatsächlich ab. Ich bin davon ausgegangen, dass das Pragma funktioniert. Da ließ ich mich verwirren. Sorry.
Bei der verkürzten Auswertung bricht der Programmfluss ab, sobald klar ist, dass der gesamte boolsche Ausdruck wahr ist.
Bei deinem Beispiel ist doch der erste Operand des or-Vergleichs False und er kann die Auswertung nicht abbrechen, weil er auf jeden Fall noch den zweiten Operand auswerten muss um zu sehen ob dieser den Gesamtausdruck wahr macht...
wenn der erste Vergleich stattdessen True ergeben würde, dann würde der zweite Vergleich nicht mehr durchgeführt werden.