On Apr 30, 2009, at 8:07 AM, Number Cruncher wrote:
Following the discussion about ABI compatibility and type-punning of
non
client-visible types, I've attached a patch against 1.3.2 which
casts to
an opaque (void *) when OMPI_BUILDING is 0.
This will prevent the compiler from trying to do any strict-aliasing
based optimizations when the definition of the type to cast to is
unknown.
When builing Open MPI, the (void *) cast is omitted (because of the
compiler flag "-DOMPI_BUILDING=1") and the code remains as before.
This clears up all warnings for my GCC 4.1 compiler.
Awesome, thanks!
I have a request in to a friend who's a C++/compiler guru (he works on
Apple's next-gen C++ compiler). He promised me an email response to
my questions about this topic by tomorrow (he was somewhat slammed
this week).
--
Jeff Squyres
Cisco Systems