Messages in this thread | | | Date | Thu, 6 Nov 2003 12:05:48 -0800 | From | "David S. Miller" <> | Subject | Re: [PATCH] 2.4.21-rc1: byteorder.h breaks with __STRICT_ANSI__ defined (trivial) |
| |
On Thu, 06 Nov 2003 22:09:29 +0200 Martin Schlemmer <azarah@gentoo.org> wrote:
> On Thu, 2003-11-06 at 21:37, David S. Miller wrote: > > Let's say that you end up using some inline function > > that takes u32 arguments, and internally it uses > > u64 types to speed up the calculation or make it more > > accurate or something like that. > > So basically only in cases where the stuff in byteorder.h > was not inlined ... ?
No, exactly in the cases where it _IS_ inlined. Imagine this:
static inline u32 swab_foo(u32 a, u32 b) { u64 tmp = ((u64)a<<32) | ((u64)b); u32 retval;
retval = compute(tmp);
return retval; }
If that's in a kernel header somewhere, and you build with -ansi, you lose. - 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/
| |