diff options
| author | Ken Dyck <ken.dyck@onsemi.com> | 2009-11-18 20:36:29 +0000 | 
|---|---|---|
| committer | Ken Dyck <ken.dyck@onsemi.com> | 2009-11-18 20:36:29 +0000 | 
| commit | 68fa5afadacdf700134890c86bde03ddd7c6ea0e (patch) | |
| tree | db50d3bb049ee1c9eb56315049b0f0eb0dd196f2 | |
| parent | e9e0cd4e27149ab4e785126a3eac5a6f2e2a1b27 (diff) | |
| download | bcm5719-llvm-68fa5afadacdf700134890c86bde03ddd7c6ea0e.tar.gz bcm5719-llvm-68fa5afadacdf700134890c86bde03ddd7c6ea0e.zip | |
Construct INTPTR_MIN, INTPTR_MAX, and UINTPTR_MAX from the exact-width limit
macros corresponding to __INTPTR_WIDTH__.
llvm-svn: 89239
| -rw-r--r-- | clang/lib/Headers/stdint.h | 13 | 
1 files changed, 4 insertions, 9 deletions
| diff --git a/clang/lib/Headers/stdint.h b/clang/lib/Headers/stdint.h index edc6e87503e..ccaf3499a42 100644 --- a/clang/lib/Headers/stdint.h +++ b/clang/lib/Headers/stdint.h @@ -603,29 +603,24 @@ typedef __stdint_exjoin3(uint, __INTMAX_WIDTH__, _t) uintmax_t;  /* C99 7.18.2.4 Limits of integer types capable of holding object pointers. */  /* C99 7.18.3 Limits of other integer types. */ +#define  INTPTR_MIN __stdint_exjoin3( INT, __INTPTR_WIDTH__, _MIN) +#define  INTPTR_MAX __stdint_exjoin3( INT, __INTPTR_WIDTH__, _MAX) +#define UINTPTR_MAX __stdint_exjoin3(UINT, __INTPTR_WIDTH__, _MAX) +  #if __POINTER_WIDTH__ == 64 -#define  INTPTR_MIN  INT64_MIN -#define  INTPTR_MAX  INT64_MAX -#define UINTPTR_MAX UINT64_MAX  #define PTRDIFF_MIN  INT64_MIN  #define PTRDIFF_MAX  INT64_MAX  #define SIZE_MAX    UINT64_MAX  #elif __POINTER_WIDTH__ == 32 -#define  INTPTR_MIN  INT32_MIN -#define  INTPTR_MAX  INT32_MAX -#define UINTPTR_MAX UINT32_MAX  #define PTRDIFF_MIN  INT32_MIN  #define PTRDIFF_MAX  INT32_MAX  #define SIZE_MAX    UINT32_MAX  #elif __POINTER_WIDTH__ == 16 -#define  INTPTR_MIN  INT16_MIN -#define  INTPTR_MAX  INT16_MAX -#define UINTPTR_MAX UINT16_MAX  #define PTRDIFF_MIN  INT16_MIN  #define PTRDIFF_MAX  INT16_MAX  #define SIZE_MAX    UINT16_MAX | 

