[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48374D3F.1080502@zytor.com>
Date: Fri, 23 May 2008 16:03:27 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: Steve French <smfrench@...il.com>
CC: lkml <linux-kernel@...r.kernel.org>
Subject: Re: kernel coding style for if ... else which cross #ifdef
Steve French wrote:
> A question splitting "else" and "if" on distinct lines vs. using an
> extra line and extra #else came up as I was reviewing a proposed cifs
> patch. Which is the preferred style?
>
> #ifdef CONFIG_SOMETHING
> if (foo)
> something ...
> else
> #endif
> if ((mode & S_IWUGO) == 0)
>
> or alternatively
>
> #ifdef CONFIG_SOMETHING
> if (foo)
> something ...
> else if ((mode & S_IWUGO) == 0)
> #else
> if ((mode & S_IWUGO) == 0)
> #endif
>
The former. Why? Because the latter case has unbalanced indentation:
to an editor, and to the human eye, it looks like the if in the #else
clause is a child to the "else if".
*However*, the best would really be if we changed Kconfig to emit
configuration constants what were 0/1 instead of undefined/defined.
That way we could do:
if (CONFIG_SOMETHING && foo) {
/* ... something ... */
} else if ((mode & S_IWUGO) == 0) {
/* ... */
... in many cases.
-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists