Re: [alsa-devel] [PATCH] ALSA: have snd_BUG_ON() always refer to arguments

From: Takashi Iwai
Date: Fri Nov 07 2008 - 03:22:58 EST


At Fri, 7 Nov 2008 03:05:56 -0500,
Mike Frysinger wrote:
>
> On Fri, Nov 7, 2008 at 03:03, Takashi Iwai wrote:
> > At Fri, 7 Nov 2008 02:57:40 -0500, Mike Frysinger wrote:
> >> On Fri, Nov 7, 2008 at 02:38, Takashi Iwai wrote:
> >> > At Fri, 7 Nov 2008 02:29:25 -0500, Mike Frysinger wrote:
> >> >> it also breaks
> >> >> valid C code if there were side effects in the (cond) as any other
> >> >> macro which does not properly utilize every argument exactly once.
> >> >
> >> > BTW, what do you mean this exactly?
> >>
> >> any potent statement. such as assignment or pre/post increment/decrement or ...
> >
> > Well, in that case, such a code itself is buggy :)
>
> i'm not advocating doing this sort of thing, i'm saying that
> functions/macros should be written correctly so as to not break
> standard C behavior. a guy developing a codec driver could waste a
> lot of time because of this sort of thing.

Well, no, it's a clear bug of the driver.

A macro that ignores arguments is normal. Or do you think assert()
isn't a part of "standard" C ? :)


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