Re: iso9660 endianness cleanup patch

From: Albert D. Cahalan (acahalan@cs.uml.edu)
Date: Thu May 03 2001 - 20:51:30 EST


Pavel Machek writes:

> It should ot break anything. gcc decides its bad to inline it, so it
> does not inline it. Small code growth at worst. Compiler has right to
> make your code bigger or slower, if it decides to do so.

Oh come on. The logical way:

inline Compiler must inline (only!) or report an error.
extern inline This is a contradiction. Report an error.
static inline This is a contradiction. Report an error.

Anything else is obvious crap. It isn't OK for the compiler
to ever ignore me; inline recursive functions are just wrong.
Taking the address of an inline function is just wrong too.

Of course the above is not what we are given. We get crap.
The old gcc behavior was crap, and I guess the C99 behavior
is too. So the only sane thing is a #define that is set to
whatever makes the compiler behave as nicely as possible.
Then we use _INLINE everywhere, and get decent behavior out
of both old and new compilers.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon May 07 2001 - 21:00:19 EST