[lkml]   [2005]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: I request inclusion of reiser4 in the mainline kernel
On 9/18/05, Nikita Danilov <> wrote:
> Denis Vlasenko writes:
> > On Friday 16 September 2005 20:05, Hans Reiser wrote:
> > You can declare functions even if you never use them.
> > Thus here you can avoid using #if/#endif:
> It's other way around: declaration is guarded by the preprocessor
> conditional so that nobody accidentally use znode_is_loaded() outside of
> the debugging mode.
Except it doesn't disallow someone from using znode_is_loaded, if you
wanted to do that you would have done this....
#if defined(REISER4_DEBUG) || defined(WHATEVER_ELSE)
int znode_is_loaded(const znode * node /* znode to query */ );
#define znode_is_loaded(I_dont_care_you_are_going_to_) \
} )die(]0now[>anyway<}}}}}}*bye*}
That way instead of silently(or -Wmissing-prototypes gving a warning)
quessing at a prototype and *maybe* geting a link time error, you get
a nice compile-time bomb-out.

So unless you have -Wmissing-prototypes and -Werror set then your
#if/#endif does very little indeed, especially with the size of kernel
it's easy to ignore yet another warning even if the missing-prototype
warning was set.
And if you would have gotten a link error then that is what you were
really depending on to save your bacon.

P.S. I'd make the define one line if gmail didn't word wrap too much.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-09-19 21:38    [W:0.190 / U:21.748 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site