. 32 bit Perl doesn't come with quads/Q/q pack letter. I have a C library that uses 64 bit ints. I use perl on windows. My C compiler also has no problems with 64 bit ints. Perl NVs don't loose integer precision until 2^53. 53 is not 64. What should my XS wrapper around this C library return the 64 bit ints as in 32 bit perl? There seems to be alot negativity over
's bloatedness. Also how to do you load packed little endian numbers into
, it seems bigint only knows what big endian ASCII hex is for importing numbers. The solution should be CPAN grade. Quads are very rarely used by this C library but they need to be exposed somehow for the rare case someone wants to call that function. The simplest thing is, on 32 bits, a 64 bit int is a 8 byte packed LE PV string, conversion routines warn() and pads if under 8 bytes long. On 64 bits its a IV/UV. Is this last solution the best solution?