diff options
author | Ken Dyck <ken.dyck@onsemi.com> | 2009-11-20 16:37:35 +0000 |
---|---|---|
committer | Ken Dyck <ken.dyck@onsemi.com> | 2009-11-20 16:37:35 +0000 |
commit | 764a5f3881b9d247bf8cd4743a9b4bb4f8a75c09 (patch) | |
tree | e5935a671a720dc7eb251b4fd446fa17ffa75c16 /clang/lib | |
parent | bc8bdea1834dd69f62306de5e456d53a0edd27e9 (diff) | |
download | bcm5719-llvm-764a5f3881b9d247bf8cd4743a9b4bb4f8a75c09.tar.gz bcm5719-llvm-764a5f3881b9d247bf8cd4743a9b4bb4f8a75c09.zip |
Avoid unwanted macro expansion in macros that paste together int<n>_t and
uint<n>_t definitions.
llvm-svn: 89459
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Headers/stdint.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/clang/lib/Headers/stdint.h b/clang/lib/Headers/stdint.h index e49b25c2873..61afe0d45d9 100644 --- a/clang/lib/Headers/stdint.h +++ b/clang/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. * |