/*  DO NOT EDIT THIS FILE.

    It has been auto-edited by fixincludes from:

	"fixinc/tests/inc/inttypes.h"

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



#if defined( HPUX_C99_INTTYPES_CHECK )
#define UINT8_C(__c) (__c)
#define UINT16_C(__c) (__c)
#define INT32_C(__c) (__c)
#define UINT32_C(__c) __CONCAT__(__c,u)

#endif  /* HPUX_C99_INTTYPES_CHECK */


#if defined( HPUX_C99_INTTYPES3_CHECK )
#undef SIZE_MAX
#define SIZE_MAX __SIZE_MAX__
#ifdef __INTPTR_MAX__
# undef INTPTR_MAX
# define INTPTR_MAX __INTPTR_MAX__
# undef INTPTR_MIN
# define INTPTR_MIN (-INTPTR_MAX - 1)
#endif
#ifdef __UINTPTR_MAX__
# undef UINTPTR_MAX
# define UINTPTR_MAX __UINTPTR_MAX__
#endif

#endif  /* HPUX_C99_INTTYPES3_CHECK */


#if defined( HPUX_C99_INTTYPES4_CHECK )
#define SCNxMAX SCNx64
#define SCNuMAX 	 SCNu64
#define SCNxMAX SCNx32
#define SCNuMAX 	 SCNu32

#endif  /* HPUX_C99_INTTYPES4_CHECK */


#if defined( HPUX_C99_INTTYPES5_CHECK )
#ifndef __LP64__
#define PRIdPTR		PRId32
#define PRIiPTR		PRIi32
#define PRIoPTR		PRIo32
#define PRIuPTR		PRIu32
#define PRIxPTR		PRIx32
#define PRIXPTR		PRIX32
#else
#define PRIdPTR		PRId64
#define PRIiPTR		PRIi64
#define PRIoPTR		PRIo64
#define PRIuPTR		PRIu64
#define PRIxPTR		PRIx64
#define PRIXPTR		PRIX64
#endif

#ifndef _KERNEL

#endif  /* HPUX_C99_INTTYPES5_CHECK */
