qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] CODING_STYLE: Section about mixed declarations


From: Stefan Weil
Subject: Re: [Qemu-devel] [PATCH] CODING_STYLE: Section about mixed declarations
Date: Mon, 10 Feb 2014 07:09:49 +0100
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Am 10.02.2014 02:33, schrieb Fam Zheng:
> On Sun, 02/09 07:03, Eduardo Habkost wrote:
>> We had an unwritten rule about declarations having to be at beginning of
>> blocks. Make it a written rule.
>>
>> Signed-off-by: Eduardo Habkost <address@hidden>
>> ---
>>  CODING_STYLE | 7 +++++++
>>  1 file changed, 7 insertions(+)
>>
>> diff --git a/CODING_STYLE b/CODING_STYLE
>> index dcbce28..f6eb319 100644
>> --- a/CODING_STYLE
>> +++ b/CODING_STYLE
>> @@ -84,3 +84,10 @@ and clarity it comes on a line by itself:
>>  Rationale: a consistent (except for functions...) bracing style reduces
>>  ambiguity and avoids needless churn when lines are added or removed.
>>  Furthermore, it is the QEMU coding style.
>> +
>> +5. Declarations
>> +
>> +Mixed declarations (interleaving statements and declarations within blocks) 
>> are
>> +not allowed; declarations should be at beginning of blocks.  In other words,

at the beginning?

>> +the code should not generate warnings if using GCC's
>> +-Wdeclaration-after-statement option.
> 
> What is the reason that we don't use -Wdeclaration-after-statement in 
> Makefile?
> Thanks.
> 
> Fam

Maybe that would be a good idea. I did a short test and added that flag
in configure (where all gcc flags are checked before they are applied):

diff --git a/configure b/configure
index f7c672a..c10a1a8 100755
--- a/configure
+++ b/configure
@@ -331,6 +331,8 @@ ARFLAGS="${ARFLAGS-rv}"
 # default flags for all hosts
 QEMU_CFLAGS="-fno-strict-aliasing $QEMU_CFLAGS"
 QEMU_CFLAGS="-Wall -Wundef -Wwrite-strings -Wmissing-prototypes
$QEMU_CFLAGS"
+QEMU_CFLAGS="-Wdeclaration-after-statement $QEMU_CFLAGS"
+QEMU_CFLAGS="-Wno-error=declaration-after-statement $QEMU_CFLAGS"
 QEMU_CFLAGS="-Wstrict-prototypes -Wredundant-decls $QEMU_CFLAGS"
 QEMU_CFLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
$QEMU_CFLAGS"
 QEMU_INCLUDES="-I. -I\$(SRC_PATH) -I\$(SRC_PATH)/include"

The first result already shows 194 different violations. See
http://qemu.weilnetz.de/test/declaration-after-statement.txt for the
build protocol. As this test does not cover all source paths, there
might be even more violations. So the code will need some fixes before
this rule can be checked by -Wdeclaration-after-statement. Until this is
one, we could use -Wno-error=declaration-after-statement as I did in my
test.

The patch for CODING_STYLE is still useful.

Reviewed-by: Stefan Weil <address@hidden>

Stefan




reply via email to

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