qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Re: [PATCH 10/14] Zero json struct with memset() instea


From: Avi Kivity
Subject: Re: [Qemu-devel] Re: [PATCH 10/14] Zero json struct with memset() instea of = {} to keep compiler happy.
Date: Mon, 30 Aug 2010 20:12:08 +0300
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.8) Gecko/20100806 Fedora/3.1.2-1.fc13 Thunderbird/3.1.2

 On 08/30/2010 06:53 PM, Jes Sorensen wrote:
On 08/30/10 17:48, Anthony Liguori wrote:
On 08/30/2010 10:43 AM, Jes Sorensen wrote:
Yes it's technically legal. However it's painful when you try to apply
more aggressive warning flags looking for real bugs.
No, this is GCC being stupid.

I would suggest we modify the coding style to ask people to not init a
struct like this.

How else do you terminate a list?  IOW:

MyDeviceInfo device_infos[] = {
   {"foo", 0, 2},
   {"bar", 0, 1},
   {} /* or { 0 } */
};

This is such a pervasive idiom that there's simply no way that GCC can
possibly try to warn against this.  Plus, it's entirely reasonable.

I think this is just a false positive in GCC.  Otherwise, there's a ton
of code that it should be throwing warnings against
I believe the comma after the last case takes care of terminating the list.

It only makes patches that add items prettier.

I agree that it would be nice to get gcc to not moan about this specific
case, however I will argue that my change is worth it to be able to use
the error flags, even if it is gcc being stupid.

If the flags make gcc stupid, why use them?

--
I have a truly marvellous patch that fixes the bug which this
signature is too narrow to contain.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]