[libvirt] [PATCH] news: Update release notes

Michal Privoznik mprivozn at redhat.com
Thu Mar 1 14:40:01 UTC 2018


On 03/01/2018 03:29 PM, Daniel P. Berrangé wrote:
> On Thu, Mar 01, 2018 at 03:12:39PM +0100, Michal Privoznik wrote:
>> On 03/01/2018 02:15 PM, Peter Krempa wrote:
>>> On Thu, Mar 01, 2018 at 14:08:29 +0100, Michal Privoznik wrote:
>>>> Signed-off-by: --help <mprivozn at redhat.com>
>>>
>>> Hmm.
>>>
>>>> ---
>>>>  docs/news.xml | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>  1 file changed, 102 insertions(+)
>>>>


>>>> +      <change>
>>>> +        <summary>
>>>> +          src: Enable building with GCC 8.0
>>>> +        </summary>
>>>> +        <description>
>>>> +          GCC 8.0 added more warnings which found some genuine problems with our code.
>>>> +        </description>
>>>
>>> I'm not sure whether that improved anything. Also wasn't that gcc 7?
>>
>> It added a lot of cases into our switches which are now safer. The
>> problem with enums in switch() statements is we have to be 100% sure
>> value fits into the enum. For instance:
>>
>> int x = VIR_DOMAIN_DEVICE_LAST + 1;
>>
>> switch ((virDomainDeviceType) x) {
>>   ...
>> }
>>
>> is obviously problematic.
>> And no, it's gcc 8.
> 
> Well yes & no. GCC complained about cases where we fell-through case:
> statements, due to us not including enough cases. This caused me to
> notice the more general problem with us not handling enum values which
> didn't correspond to named constants.
> 
> So the general addition of case/default everywhere was not specifically
> required by gcc 8. It is just something I chose todo to make us more
> robust after realizing the implications of what gcc8 identified. The
> warning flags we use to validate this have existed in ancient gcc versions.

Looks like Peter has opinion on this too. So should I leave this item
out or reword it?

Michal




More information about the libvir-list mailing list