On 08/12/2010 06:05 AM, Joel de Guzman wrote:
On 8/12/10 2:59 AM, Emil Dotchevski wrote:
On Wed, Aug 11, 2010 at 1:37 AM, Roland Bock
wrote: Hi,
compiling the attached example with gcc-4.4.3 (Ubuntu 10.4, 64bit) with
-Wall -O3
leads to a long warning message (second attachment), culminating in
boost/1.44/include/boost/function/function_base.hpp:321: warning: dereferencing type-punned pointer will break strict-aliasing rules boost/1.44/include/boost/function/function_base.hpp:325: warning: dereferencing type-punned pointer will break strict-aliasing rules
I wonder how I could avoid this without -fno-strict-aliasing or -Wno-strict-aliasing?
The code in question is a reinterpret_cast which casts a char pointer to a user-specified functor type pointer. The interpret cast seems correct, and the warning seems correct too if not very useful in this case.
Shouldn't this thread have a [function] subject as this seems to be about boost.function issue?
Maybe. Not sure since the warning occurred in a Spirit context. My code does not use anything of boost.function directly. Based on the hints so far, I'll investigate some more. Regards, Roland