/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

	"fixinc/tests/inc/stdint-aix.h"

    This had to be done to correct non-standard usages in the
    original, manufacturer supplied header file.  */



#if defined( AIX_STDINT_1_CHECK )
#define UINT8_MAX	(255)
#define UINT16_MAX	(65535)
#endif  /* AIX_STDINT_1_CHECK */


#if defined( AIX_STDINT_2_CHECK )
#define INTPTR_MIN	(-INTPTR_MAX-1)
#define INTPTR_MAX	9223372036854775807L
#define UINTPTR_MAX	18446744073709551615UL
#else
#define INTPTR_MIN	(-INTPTR_MAX-1)
#define INTPTR_MAX	2147483647L
#define UINTPTR_MAX	4294967295UL
#endif  /* AIX_STDINT_2_CHECK */


#if defined( AIX_STDINT_3_CHECK )
#define PTRDIFF_MIN	(-9223372036854775807L - 1)
#define PTRDIFF_MAX	9223372036854775807L
#else
#define PTRDIFF_MIN	(-2147483647L - 1)
#define PTRDIFF_MAX	2147483647L
#endif  /* AIX_STDINT_3_CHECK */


#if defined( AIX_STDINT_4_CHECK )
#define SIZE_MAX	18446744073709551615UL
#else
#define SIZE_MAX	4294967295UL
#endif  /* AIX_STDINT_4_CHECK */


#if defined( AIX_STDINT_5_CHECK )
#define UINT8_C(c)	c
#define UINT16_C(c)	c
#endif  /* AIX_STDINT_5_CHECK */
