From 1aa6d2145efb497f87afb59bd5f6afc1e69b9bcf Mon Sep 17 00:00:00 2001 From: KO Myung-Hun Date: Fri, 15 Jan 2016 10:06:57 -0800 Subject: [PATCH] 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. --- lib/stdint.in.h | 5 +++++ 1 file changed, 5 insertions(+) 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 */ -- 2.39.5