Fix the build after recent CARD64 / unsigned long fises for llvm 16

There are many places in X drivers where CARD64 is used mixed with uint64_t
and CARD32 mixed with uint32_t.
Initially the CARD* types were only meant to be used in the X protocol
definition and implementation. Later they got used in driver for fixed-
length unsigned integers as synonyms for uintxx_t types.
Unfortunatly on OpenBSD the definition of uint64_t and CARD64 don't match.
So take the bull by the horns and fix the CARDxx definitions using the
corresponding uintxx_t types from stdint.h.
master
matthieu 2023-09-07 21:54:21 +00:00
parent 5ab3ec55fb
commit 50e9bfdb05
1 changed files with 6 additions and 9 deletions

View File

@ -57,6 +57,8 @@ SOFTWARE.
# include <sys/isa_defs.h> /* Solaris: defines _LP64 if necessary */
# endif
#include <stdint.h>
#if defined(__SIZEOF_LONG__)
# if __SIZEOF_LONG__ == 8
# define LONG64 /* 32/64-bit architecture */
@ -107,15 +109,10 @@ typedef short INT16;
typedef signed char INT8;
# ifdef LONG64
typedef unsigned long CARD64;
typedef unsigned int CARD32;
# else
typedef unsigned long long CARD64;
typedef unsigned long CARD32;
# endif
typedef unsigned short CARD16;
typedef unsigned char CARD8;
typedef uint64_t CARD64;
typedef uint32_t CARD32;
typedef uint16_t CARD16;
typedef uint8_t CARD8;
typedef CARD32 BITS32;
typedef CARD16 BITS16;