[libvirt] [PATCH] esx: Avoid warnings about breaking strict-aliasing rules on FreeBSD

Matthias Bolte matthias.bolte at googlemail.com
Sun Nov 14 22:09:45 UTC 2010


2010/11/13 Eric Blake <eblake at redhat.com>:
> On 11/13/2010 08:53 AM, Matthias Bolte wrote:
>> ---
>>  src/esx/esx_vi_generator.py |   10 ++++++++--
>>  1 files changed, 8 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/esx/esx_vi_generator.py b/src/esx/esx_vi_generator.py
>> index c2f7044..01636aa 100755
>> --- a/src/esx/esx_vi_generator.py
>> +++ b/src/esx/esx_vi_generator.py
>> @@ -699,7 +699,10 @@ class Object:
>>
>>              if self.features & Object.FEATURE__LIST:
>>                  if self.extends is not None:
>> -                    source += "    esxVI_%s_Free((esxVI_%s **)&item->_next);\n\n" % (self.extends, self.extends)
>> +                    # avoid "dereferencing type-punned pointer will break strict-aliasing rules" warnings
>> +                    source += "    esxVI_%s *next = (esxVI_%s *)item->_next;\n\n" % (self.extends, self.extends)
>> +                    source += "    esxVI_%s_Free(&next);\n" % self.extends
>> +                    source += "    item->_next = (esxVI_%s *)next;\n\n" % self.name
>
> ACK.
>

Thanks, pushed.

Matthias




More information about the libvir-list mailing list