Re: [linux-usb-devel] Re: [BK PATCH] USB changes for 2.5.34

Daniel Phillips (phillips@arcor.de)
Mon, 16 Sep 2002 21:40:12 +0200


On Monday 16 September 2002 21:36, Thunder from the hill wrote:
> Hi,
>
> On Mon, 16 Sep 2002, Daniel Phillips wrote:
> > On Monday 16 September 2002 20:35, Thunder from the hill wrote:
> > > !assert(typeof((fool)->next) == typeof(fool));
> >
> > You meant:
> >
> > assert(typeof((fool)->next) != typeof(fool));
>
> No, I mean "Never assert that the one next to a fool must be a fool,
> either. You might be wrong."

A proper assert does not return a value, by definition.  It relies purely
on side effects, that is, it causes a screeching halt if the logical
expression was false.  It's always wrong to use an asssert in an expression,
and since BUG_ON is just assert(!expression) this applies to BUG_ON as
well.  The compiler should prevent you from making this mistake.

What I *thought* you meant was: "if the next fool that comes along is
exactly the same as the last fool, run away screaming".  There's some wisdom
in that.

-- 
Daniel
-
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/