diff options
author | Adrian Johnson <ajohnson@redneon.com> | 2021-07-25 06:18:37 +0930 |
---|---|---|
committer | Adrian Johnson <ajohnson@redneon.com> | 2021-07-25 11:01:20 +0930 |
commit | 9fbf42754899898934bc8bf4f8eeacba37656fdc (patch) | |
tree | 71290e364a7dd65973cb0cdcef32615c4c8dc374 /util | |
parent | 099d71fb9f267153da8b45adc288f9715fbb4611 (diff) | |
download | cairo-9fbf42754899898934bc8bf4f8eeacba37656fdc.tar.gz |
Use uintptr_t for all casts between pointer and integer
On 64-bit windows, long is 32-bit. When compiling there are a large
number of warnings about mismatched sizes when casting long to/from a
pointer.
Use the (u)intptr_t type for any integer that will have a pointer stored
in it. Use a (u)intptr_t cast when integers are stored in pointers to
silence warnings.
Fixes #263
Diffstat (limited to 'util')
-rw-r--r-- | util/cairo-script/cairo-script-private.h | 2 | ||||
-rw-r--r-- | util/cairo-trace/lookup-symbol.c | 2 | ||||
-rw-r--r-- | util/cairo-trace/trace.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/util/cairo-script/cairo-script-private.h b/util/cairo-script/cairo-script-private.h index 7ae8be925..b1b4aed0e 100644 --- a/util/cairo-script/cairo-script-private.h +++ b/util/cairo-script/cairo-script-private.h @@ -284,7 +284,7 @@ typedef cairo_bool_t csi_boolean_t; typedef csi_status_t (*csi_operator_t) (csi_t *); typedef float csi_real_t; typedef long csi_integer_t; -typedef long csi_name_t; +typedef intptr_t csi_name_t; typedef struct _csi_array csi_array_t; typedef struct _csi_buffer csi_buffer_t; typedef struct _csi_compound_object csi_compound_object_t; diff --git a/util/cairo-trace/lookup-symbol.c b/util/cairo-trace/lookup-symbol.c index 4bc1fac1a..3934066b9 100644 --- a/util/cairo-trace/lookup-symbol.c +++ b/util/cairo-trace/lookup-symbol.c @@ -262,7 +262,7 @@ lookup_symbol (char *buf, int buflen, const void *ptr) int bucket; int len; - bucket = (unsigned long) ptr % (sizeof (symbol_cache_hash) / sizeof (symbol_cache_hash[0])); + bucket = (uintptr_t) ptr % (sizeof (symbol_cache_hash) / sizeof (symbol_cache_hash[0])); pthread_mutex_lock (&symbol_cache_mutex); for (cache = symbol_cache_hash[bucket]; cache != NULL; diff --git a/util/cairo-trace/trace.c b/util/cairo-trace/trace.c index babcc06fa..cc4b18c0d 100644 --- a/util/cairo-trace/trace.c +++ b/util/cairo-trace/trace.c @@ -134,7 +134,7 @@ static void *_dlhandle = RTLD_NEXT; #else #error Unexpected pointer size #endif -#define BUCKET(b, ptr) (((unsigned long) (ptr) >> PTR_SHIFT) % ARRAY_LENGTH (b)) +#define BUCKET(b, ptr) (((uintptr_t) (ptr) >> PTR_SHIFT) % ARRAY_LENGTH (b)) #if defined(__GNUC__) && (__GNUC__ > 2) && defined(__OPTIMIZE__) #define _BOOLEAN_EXPR(expr) \ |