From: KO Myung-Hun Date: Fri, 15 Jan 2016 18:06:57 +0000 (-0800) Subject: stdint: check _INTPTR_T_DECLARED for intptr_t etc. X-Git-Tag: v1.0~6847 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=1aa6d2145efb497f87afb59bd5f6afc1e69b9bcf;p=gnulib.git stdint: check _INTPTR_T_DECLARED for intptr_t etc. OS/2 kLIBC's stdint.h defines _INTPTR_T_DECLARED and needs its own definitions of intptr_t and uintptr_t (which use int and unsigned) to avoid clashes with declarations of system functions like sbrk. * lib/stdint.in.h (intptr_t, uintptr_t): Check _INTPTR_T_DECLARED before defining them. --- diff --git a/lib/stdint.in.h b/lib/stdint.in.h index d20d1c798e..f22e7d5259 100644 --- a/lib/stdint.in.h +++ b/lib/stdint.in.h @@ -288,12 +288,17 @@ typedef gl_uint_fast32_t gl_uint_fast16_t; /* 7.18.1.4. Integer types capable of holding object pointers */ +/* kLIBC's stdint.h defines _INTPTR_T_DECLARED and needs its own + definitions of intptr_t and uintptr_t (which use int and unsigned) + to avoid clashes with declarations of system functions like sbrk. */ +#ifndef _INTPTR_T_DECLARED #undef intptr_t #undef uintptr_t typedef long int gl_intptr_t; typedef unsigned long int gl_uintptr_t; #define intptr_t gl_intptr_t #define uintptr_t gl_uintptr_t +#endif /* 7.18.1.5. Greatest-width integer types */