diff options
author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2017-12-09 13:54:20 +0100 |
---|---|---|
committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2018-12-17 21:56:32 +0100 |
commit | f5eabb34da68cddf76cfbfc75c8d1373d327e346 (patch) | |
tree | 2535434e3c5a71d2b6468b2078a6770e11f9c0ae | |
parent | e019565f57e76774f24c54b9b89a5e44fb4052a1 (diff) | |
download | sparse-f5eabb34da68cddf76cfbfc75c8d1373d327e346.tar.gz |
add predefined macros for [u]intptr
Luckily, it seems all archs use for them the same types as
size_t & ssize_t.
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r-- | lib.c | 2 | ||||
-rw-r--r-- | validation/preprocessor/predef.c | 2 |
2 files changed, 4 insertions, 0 deletions
@@ -1239,6 +1239,8 @@ static void predefined_macros(void) predefined_sizeof("INT128", "", 128); + predefined_ctype("INTPTR", ssize_t_ctype, PTYPE_MAX|PTYPE_TYPE|PTYPE_WIDTH); + predefined_ctype("UINTPTR", size_t_ctype, PTYPE_MAX|PTYPE_TYPE); predefined_ctype("PTRDIFF", ssize_t_ctype, PTYPE_ALL_T|PTYPE_TYPE); predefined_ctype("SIZE", size_t_ctype, PTYPE_ALL_T|PTYPE_TYPE); predefined_ctype("POINTER", &ptr_ctype, PTYPE_SIZEOF); diff --git a/validation/preprocessor/predef.c b/validation/preprocessor/predef.c index 298bdd93..df0944b3 100644 --- a/validation/preprocessor/predef.c +++ b/validation/preprocessor/predef.c @@ -17,6 +17,8 @@ int test(void) TEST_SMAX(INT, int); TEST_SMAX(LONG, long); TEST_SMAX(LONG_LONG, long long); + TEST_SMAX(INTPTR, __INTPTR_TYPE__); + TEST_UMAX(UINTPTR, __UINTPTR_TYPE__); TEST_SMAX(PTRDIFF, __PTRDIFF_TYPE__); TEST_UMAX(SIZE, __SIZE_TYPE__); |