We didn't specify the indent rule for multiline code here, which may mislead users. And in current code, the code use various styles.
Add this rule in CODING_STYLE to make sure this is clear to every one. Signed-off-by: Wei Yang <richardw.y...@linux.intel.com> Suggested-by: Igor Mammedov <imamm...@redhat.com> --- v5: * different rules -> various styles * describe function variants separately * take struct out v4: * widths -> width * add an exception example for function v3: * misleading -> mislead * add comma after arg2 in example v2: * rephrase changelog suggested by Eric Blake - remove one redundant line - fix some awkward grammar - add { ; at the end of example --- CODING_STYLE | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/CODING_STYLE b/CODING_STYLE index ec075dedc4..e175e6ea9a 100644 --- a/CODING_STYLE +++ b/CODING_STYLE @@ -29,6 +29,45 @@ Spaces of course are superior to tabs because: Do not leave whitespace dangling off the ends of lines. +1.1 Multiline Indent + +There are several places where indent is necessary: + + - if/else + - while/for + - function definition & call + +When breaking up a long line to fit within line width, we need a proper indent +for the following lines. + +In case of if/else, while/for, align the secondary lines just after the +opening parenthesis of the first. + +For example: + + if (a == 1 && + b == 2) { + + while (a == 1 && + b == 2) { + +In case of function, there are several variants: + + * 4 spaces indent from the beginning + * align the secondary lines just after the opening parenthesis of the + first + +For example: + + do_something(x, y, + z); + + do_something(x, y, + z); + + do_something(x, do_another(y, + z); + 2. Line width Lines should be 80 characters; try not to make them longer. -- 2.19.1