On Wed, Jul 18, 2007 at 03:43:39AM +0200, [EMAIL PROTECTED] wrote:
> * Most likly a _really_ stupid newbie question, but I have seen several of
> this
> form:
> <function>
> {
> <variable> a;
> <doing something useful (no sign of 'a')>
> a = <some value/variable>;
> <exit>
> }
> How is this variable useful?
Explain, please. If you mean moving the declaration down - it's not
idiomatic in C and frankly, C++ style tends to make declarations harder
to find when you read the code.
> * Why is there no va_end() after va_start()?
Where?
> According to the manual (STDARG(3)):
> va_end
> Each invocation of va_start() must be matched by a corresponding invo-
> cation of va_end() in the same function. After the call va_end(ap) the
> variable ap is undefined. Multiple transversals of the list, each
> bracketed by va_start() and va_end() are possible. va_end() may be a
> macro or a function.
Yes, and AFAICS uses of va_start()/va_end() in sparse are correct. If you
see any broken one - yell.
> * Is there any advantage of "for (;;)" instead of ex "while (true)"?
It's more idiomatic and faster recognized by readers. while (1) is also
quite common; while (true) will be understood, but will distract since it
will take more conscious effort to recognize.
> * Why is it written in C and not C++. Easier access to kernel-developers?
> (just
> curious)
Generally saner language? Turn the question around - what in sparse would
be inherently cleaner in C++?
-
To unsubscribe from this list: send the line "unsubscribe linux-sparse" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html