RE: [PATCH] staging: r8188eu: combine nested if statements into one

From: David Laight
Date: Thu Jun 23 2022 - 08:05:49 EST


...
> Seems to work. But the rules which operation is done first && or == are
> not too easy.

They are the way around you want them to be.
== generates a truth value.
&& and || compare truth values,

The only 'wrong' operator priorities are & and |.
The short-circuiting && and || weren't in the very early
versions of C - the bitwise & and | were used.
When K&R added && and || they left the priorities of & an | alone.
I they they've later said they should have bitten the bullet
and changed the priorities and all the existing C code

> I would prefer to have:
>
> if (padapter && (pfree_recv_queue == free_recv_queue))
>
> So it is very easy to read what is evaluated first.

That just starts adding too many () and makes more complex
conditionals hard to read.

David

>
> But this is just my opinion and does not have to be right.
>
> Thanks for your patch.
>
> Bye Philipp

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)