From 8b8bf90b982e7184d36014300f2289ab7aea2b85 Mon Sep 17 00:00:00 2001 From: Bill Hoffman <bill.hoffman@kitware.com> Date: Thu, 27 Apr 2006 15:48:05 -0400 Subject: [PATCH] ENH: remove warning --- DynamicLoader.cxx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/DynamicLoader.cxx b/DynamicLoader.cxx index 4dfeb02..7e68977 100644 --- a/DynamicLoader.cxx +++ b/DynamicLoader.cxx @@ -359,10 +359,14 @@ int DynamicLoader::CloseLibrary(DynamicLoader::LibraryHandle lib) DynamicLoader::SymbolPointer DynamicLoader::GetSymbolAddress( DynamicLoader::LibraryHandle lib, const char* sym) { - void* result = dlsym(lib, sym); - // Hack to cast pointer-to-data to pointer-to-function. - return *reinterpret_cast<DynamicLoader::SymbolPointer*>(&result); + union + { + void* pvoid; + DynamicLoader::SymbolPointer psym; + } result; + result.pvoid = dlsym(lib, sym); + return result.psym; } //---------------------------------------------------------------------------- -- GitLab