64 bit type in Win32?

I’m curious why SDL doesn’t use a 64 bit integer on Windows. I’m using the
1.0.8 release version, and in SDL_types.h it reads:

/* Figure out how to support 64-bit datatypes /
#if defined(GNUC) || defined(MWERKS) /
MJS */
#define SDL_HAS_64BIT_TYPE long long
#endif

When I change this to:
/* Figure out how to support 64-bit datatypes /
#if defined(GNUC) || defined(MWERKS) /
MJS */
#define SDL_HAS_64BIT_TYPE long long
#elif defined ( WIN32 )
#define SDL_HAS_64BIT_TYPE __int64
#endif

It seems to compile and work just fine. (Using MSVC 6sp4.)

So I have concerns that the 64 bit int was excluded for performance
concerns or a bug that is now lurking in my code.

My other question is simpler: WIN32 is clearly the incorrect #define to key
off of – which one is used to denote the MSVC compiler in SDL?

thanks,
lee

I’m curious why SDL doesn’t use a 64 bit integer on Windows.

When I change this to:
/* Figure out how to support 64-bit datatypes /
#if defined(GNUC) || defined(MWERKS) /
MJS */
#define SDL_HAS_64BIT_TYPE long long
#elif defined ( WIN32 )
#define SDL_HAS_64BIT_TYPE __int64
#endif

It seems to compile and work just fine. (Using MSVC 6sp4.)

Great, I added the correct preprocessor symbol to the latest CVS.

See ya!
-Sam Lantinga, Lead Programmer, Loki Entertainment Software