Curtis L. Olson wrote:
> I see that Linux (C99) has an inttypes.h include that defines: int8_t,
> int16_t, int32_t, int64_t and uint8_t, uint16_t, uint32_t, uint64_t

I looked this stuff up recently while doing some work on Nasal.  The
header you really want is stdint.h, which is where the C99 standard
says the definitions for these types are (the glibc inttypes.h
includes stdint.h, but I'm not 100% sure if that's part of the
standard or not).

Unfortunately, MSVC doesn't have this header yet as of the most recent
VS.NET release.  Here is a Darwin header file that popped up when I
googled the issue with a putative workaround:

http://www.opensource.apple.com/darwinsource/10.3/mDNSResponder-58/mDNSWindows/DNSServices/DNSServiceDiscovery.h

Which, of course, basically does this:

> #ifdef _MSC_VER
> typedef signed char    int8_t;
> typedef unsigned char  uint8_t;
> typedef signed short   int16_t;
> typedef unsigned short uint16_t;
> typedef signed long    int32_t;
> typedef unsigned long  uint32_t;
> #else
> #include <stdint.h>
> #endif

The fact that this is an apple header implies that it ought to work
out of the box on OS/X and the various BSDs.  The only other platforms
we support right now are SGI and Solaris, right?  Can anyone check the
status of stdint.h on those platforms?

Andy


_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@flightgear.org
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d

Reply via email to