On Allegro the feature (pushnew 'no-long-long *features*) is always set.
The no-long-long feature is incredibly broken on 64-bit Linux, as it assumes that a long is 32-bits when it is actually 64-bits. This causes very hard crashes (Allegro's strange SIGEMT).
64-bit Allegro can handle long-longs. On Linux an long is a long-long, but on MS Windows a long is an int. Therefore we use the :nat and :unsigned-nat types which are consistently 64-bit.
Here is a patch to correct it; I think I munged the beautiful whitespace though (with my proportional width font it looks munged anyway . . .).