From fee5c58c6caecdbdb387fe39bd6ed94faf7f6ae9 Mon Sep 17 00:00:00 2001 From: M Joonas Pihlaja Date: Sun, 13 Sep 2009 13:09:47 +0100 Subject: [PATCH] [trace] Avoid warnings from assigning a void pointer to a function pointer. The Sun Studio compiler complains a *lot* when assigning the result of dlsym to a function pointer. Cast the result to the proper type first.:w --- util/cairo-trace/trace.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/util/cairo-trace/trace.c b/util/cairo-trace/trace.c index 5a1f9082b..c826ea2ee 100644 --- a/util/cairo-trace/trace.c +++ b/util/cairo-trace/trace.c @@ -87,10 +87,10 @@ static void *_dlhandle = RTLD_NEXT; #define DLCALL(name, args...) ({ \ static typeof (&name) name##_real; \ if (name##_real == NULL) { \ - name##_real = dlsym (_dlhandle, #name); \ + name##_real = (typeof (&name))(dlsym (_dlhandle, #name)); \ if (name##_real == NULL && _dlhandle == RTLD_NEXT) { \ _dlhandle = dlopen ("libcairo.so", RTLD_LAZY); \ - name##_real = dlsym (_dlhandle, #name); \ + name##_real = (typeof (&name))(dlsym (_dlhandle, #name)); \ assert (name##_real != NULL); \ } \ } \