aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorKen Dyck <ken.dyck@onsemi.com>2009-11-20 16:37:35 +0000
committerKen Dyck <ken.dyck@onsemi.com>2009-11-20 16:37:35 +0000
commitaface1b7e0013b3054991c9d54c82d6c890ee554 (patch)
tree75bb613928ee26ff9f918ca346bcefd28522e448 /lib
parentff80fabfa42d4aadbbaab4d61fa518d80b5a981a (diff)
Avoid unwanted macro expansion in macros that paste together int<n>_t and
uint<n>_t definitions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89459 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Headers/stdint.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/Headers/stdint.h b/lib/Headers/stdint.h
index e49b25c287..61afe0d45d 100644
--- a/lib/Headers/stdint.h
+++ b/lib/Headers/stdint.h
@@ -216,16 +216,19 @@ typedef __uint_least8_t uint_fast8_t;
#define __stdint_join3(a,b,c) a ## b ## c
#define __stdint_exjoin3(a,b,c) __stdint_join3(a,b,c)
+#define __intn_t(n) __stdint_join3( int, n, _t)
+#define __uintn_t(n) __stdint_join3(uint, n, _t)
+
#ifndef __intptr_t_defined
-typedef __stdint_exjoin3( int, __INTPTR_WIDTH__, _t) intptr_t;
+typedef __intn_t(__INTPTR_WIDTH__) intptr_t;
#define __intptr_t_defined
#endif
-typedef __stdint_exjoin3(uint, __INTPTR_WIDTH__, _t) uintptr_t;
+typedef __uintn_t(__INTPTR_WIDTH__) uintptr_t;
/* C99 7.18.1.5 Greatest-width integer types.
*/
-typedef __stdint_exjoin3( int, __INTMAX_WIDTH__, _t) intmax_t;
-typedef __stdint_exjoin3(uint, __INTMAX_WIDTH__, _t) uintmax_t;
+typedef __intn_t(__INTMAX_WIDTH__) intmax_t;
+typedef __uintn_t(__INTMAX_WIDTH__) uintmax_t;
/* C99 7.18.4 Macros for minimum-width integer constants.
*