From: Zbigniew Jędrzejewski-Szmek Date: Thu, 7 Jun 2018 13:08:02 +0000 (+0200) Subject: CODING_STYLE: allow c99-style mixed code and declarations X-Git-Tag: v239~125 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=d40f5cc498a781bb2fc7b465c7be4372444754ed;p=thirdparty%2Fsystemd.git CODING_STYLE: allow c99-style mixed code and declarations We already allowed variables to be declared in the middle of a function (whenever a new scope was opened), so this isn't such a big change. Sometimes we would open a scope just to work around this prohibition. But sometimes the code can be much clearer if the variable is declared somewhere in the middle of a scope, in particular if the declaration is combined with initialization or acquisition of some resources. So let's allow this, but keep things in the old style, unless there's a good reason to move the variable declaration to a different place. --- diff --git a/doc/CODING_STYLE b/doc/CODING_STYLE index be303591605..2c1577d8aa3 100644 --- a/doc/CODING_STYLE +++ b/doc/CODING_STYLE @@ -105,19 +105,11 @@ applicable (i.e. wherever you just care about equality/inequality, not about the sorting order). -- Please do not allocate variables on the stack in the middle of code, - even if C99 allows it. Wrong: +- Preferably allocate stack variables on the top of the block: { - a = 5; - int b; - b = a; - } + int a, b; - Right: - - { - int b; a = 5; b = a; } diff --git a/meson.build b/meson.build index 18b4ace5b97..a4c2368df94 100644 --- a/meson.build +++ b/meson.build @@ -302,7 +302,6 @@ possible_cc_flags = [ '-Wold-style-definition', '-Wpointer-arith', '-Winit-self', - '-Wdeclaration-after-statement', '-Wfloat-equal', '-Wsuggest-attribute=noreturn', '-Werror=missing-prototypes', @@ -365,7 +364,7 @@ endif add_project_arguments(cc.get_supported_arguments(possible_cc_flags), language : 'c') # "negative" arguments: gcc on purpose does not return an error for "-Wno-" -# arguments, just emits a warnings. So test for the "positive" version instead. +# arguments, just emits a warning. So test for the "positive" version instead. foreach arg : ['unused-parameter', 'missing-field-initializers', 'unused-result',