From: Brian Paul Date: Thu, 13 May 2010 22:38:58 +0000 (-0600) Subject: mesa: silence void * / func * conversion warnings X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e22e65d2230f8a1ec478147f786899cba14e4d3e;p=mesa.git mesa: silence void * / func * conversion warnings --- diff --git a/src/mesa/main/dlopen.c b/src/mesa/main/dlopen.c index 658ac9e40cf..57a33292ed1 100644 --- a/src/mesa/main/dlopen.c +++ b/src/mesa/main/dlopen.c @@ -67,22 +67,27 @@ _mesa_dlopen(const char *libname, int flags) GenericFunc _mesa_dlsym(void *handle, const char *fname) { + union { + void *v; + GenericFunc f; + } u; #if defined(__blrts) - return (GenericFunc) NULL; + u.v = NULL; #elif defined(__DJGPP__) /* need '_' prefix on symbol names */ char fname2[1000]; fname2[0] = '_'; strncpy(fname2 + 1, fname, 998); fname2[999] = 0; - return (GenericFunc) dlsym(handle, fname2); + u.v = dlsym(handle, fname2); #elif defined(_GNU_SOURCE) - return (GenericFunc) dlsym(handle, fname); + u.v = dlsym(handle, fname); #elif defined(__MINGW32__) - return (GenericFunc) GetProcAddress(handle, fname); + u.v = (void *) GetProcAddress(handle, fname); #else - return (GenericFunc) NULL; + u.v = NULL; #endif + return u.f; }