2
******************************************************************************
4
* Copyright (C) 1997-2010, International Business Machines
5
* Corporation and others. All Rights Reserved.
7
******************************************************************************
11
* Date Name Description
12
* 05/13/98 nos Creation (content moved here from ptypes.h).
13
* 03/02/99 stephen Added AS400 support.
14
* 03/30/99 stephen Added Linux support.
15
* 04/13/99 stephen Reworked for autoconf.
16
* 09/18/08 srl Moved basic types back to ptypes.h from platform.h
17
******************************************************************************
23
#include <sys/types.h>
25
#include "unicode/platform.h"
27
/*===========================================================================*/
28
/* Generic data types */
29
/*===========================================================================*/
31
/* If your platform does not have the <inttypes.h> header, you may
32
need to edit the typedefs below. */
35
/* autoconf 2.13 sometimes can't properly find the data types in <inttypes.h> */
36
/* os/390 needs <inttypes.h>, but it doesn't have int8_t, and it sometimes */
37
/* doesn't have uint8_t depending on the OS version. */
38
/* So we have this work around. */
40
/* The features header is needed to get (u)int64_t sometimes. */
43
typedef signed char int8_t;
45
#if !defined(__uint8_t)
47
typedef unsigned char uint8_t;
53
#else /* U_HAVE_INTTYPES_H */
56
typedef signed char int8_t;
60
typedef unsigned char uint8_t;
64
typedef signed short int16_t;
68
typedef unsigned short uint16_t;
72
typedef signed int int32_t;
76
typedef unsigned int uint32_t;
80
typedef signed long long int64_t;
81
/* else we may not have a 64-bit type */
85
typedef unsigned long long uint64_t;
86
/* else we may not have a 64-bit type */
89
#endif /* U_HAVE_INTTYPES_H */
91
#endif /* _PTYPES_H */