There are some software like openldap and mozilla LDAP c-sdk which use void* in function parameter. There I have the problem that long values not correct transmitted. e.g. this part of code will fail on Solaris Sparc compiled with Solaris Studio 12.3.
int foo(void* vp){
long value;
value = *(long*)vp;
}
long myvalue = 0;
foo(&myvalue);
Anybody has seen this problem also. How can I handle this without to change the interface of foo()?
asked: 2014-03-20 by: cgrzemba