LongInt ist ein statischer/nativer Typ, so wie der AnsiString.
Integer
ist war mal ein wachsender / sich anpassender Typ.
In einem Win16-Compiler (Delphi 1) war er 16 Bit.
In einem
Win32-Compiler ist er 32 Bit.
Und wenn man für Win64 kompiliert wäre er 64 Bit gewesen.
So wie String bis D2007 ein AnsiString war und seit D2009 ein UnicodeString ist.
(OK, irgend C-Idiot ist auf die Idee gekommen den Integer einzufriehren und dafür den NativeInt zu erfinden, weswegen der Integer auch unter Win64 einem LongInt entspricht)
PS: Weil ich diesen Sch*** nicht mitmache, wird der Integer, in meinen Codes, auch in Zukunft weiterhin mitwachsen.