struct shl_descriptor inf;
int i,len;
- if (addr == NULL) addr = dl_pathbyaddr;
+ if (addr == NULL)
+ {
+ union { int(*f)(void*,char*,int); void *p; } t =
+ { dl_pathbyaddr };
+ addr = t.p;
+ }
for (i=-1;shl_get_r(i,&inf)==0;i++)
{
Dl_info dli;
int len;
- if (addr == NULL) addr = dlfcn_pathbyaddr;
+ if (addr == NULL)
+ {
+ union { int(*f)(void*,char*,int); void *p; } t =
+ { dlfcn_pathbyaddr };
+ addr = t.p;
+ }
if (dladdr(addr,&dli))
{
MODULE32 module_first, module_next;
int len;
- if (addr == NULL) addr = win32_pathbyaddr;
+ if (addr == NULL)
+ {
+ union { int(*f)(void*,char*,int); void *p; } t =
+ { win32_pathbyaddr };
+ addr = t.p;
+ }
dll = LoadLibrary(TEXT(DLLNAME));
if (dll == NULL)