diff -r 762bc029de50 -r 850b2295a494 src/os/solaris/vm/os_solaris.cpp --- a/src/os/solaris/vm/os_solaris.cpp Fri Feb 11 15:32:03 2011 -0800 +++ b/src/os/solaris/vm/os_solaris.cpp Mon Feb 14 14:36:29 2011 -0800 @@ -1975,7 +1975,11 @@ #ifndef RTLD_DL_SYMENT #define RTLD_DL_SYMENT 1 #endif - Sym * info; +#ifdef _LP64 + Elf64_Sym * info; +#else + Elf32_Sym * info; +#endif if (dladdr1_func((void *)addr, &dlinfo, (void **)&info, RTLD_DL_SYMENT)) { if ((char *)dlinfo.dli_saddr + info->st_size > (char *)addr) { @@ -6424,4 +6428,3 @@ INTERRUPTIBLE_RETURN_INT_NORESTART(::bind(fd, him, len),\ os::Solaris::clear_interrupted); } -