Re: [PATCH] linux/string.h: Introduce streq macro.

From: Thiago Farina
Date: Wed Apr 27 2011 - 18:21:08 EST


On Wed, Apr 27, 2011 at 2:07 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> On Wed, 2011-04-27 at 17:46 +0100, Al Viro wrote:
>> On Tue, Apr 26, 2011 at 03:49:49PM -0300, Thiago Farina wrote:
>> > This macro is arguably more readable than its variants:
>> > - !strcmp(a, b)
>> > - strcmp(a, b) == 0
>>
>> Strongly NACKed. ÂAs far as I'm concerned, it's in the same shitbucket as
>> bcopy(3), bzero(3) et.al. ÂUse idiomatic C; extensions of that kind are
>> *bad*, since new developers have to learn them.
>
> What developer has to really learn streq()?
Yeah, I'm not understanding why they can understand !strcmp(a,b) but
not streq ;)

Also, I know it doesn't matter but we already have one definition of
streq on scripts/dtc/dtc.h

> I mean it is pretty obvious to what it does, as suppose to what bzero and bcopy do. A quick google
> on "streq" brings up lots of matches of people who already do this.
>
> Actually, some have "optimized" it with:
>
> #define streq(a, b) (*(a) == *(b) && strcmp(a, b) == 0)
>
> As it fails out if the first character does not match (likely the case
> if strings do not match) before it calls the strcmp function.
>
> -- Steve
>
>
>
--
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/