On 08/30/2010 10:43 AM, Jes Sorensen wrote:
On 08/30/10 17:39, Anthony Liguori wrote:
On 08/30/2010 10:35 AM, jes.soren...@redhat.com wrote:
From: Jes Sorensen<jes.soren...@redhat.com>
This keeps the compiler happy when building with -Wextra while
effectively generating the same code.
Signed-off-by: Jes Sorensen<jes.soren...@redhat.com>
What's GCC's compliant?
cc1: warnings being treated as errors
qjson.c: In function 'qobject_from_jsonv':
qjson.c:39: error: missing initializer
qjson.c:39: error: (near initialization for 'state.parser')
make: *** [qjson.o] Error 1
We have a lot of these where we try to init a struct element {}.
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.
Regards,
Anthony Liguori
Cheers,
Jes