Coding style operator precedence

Solomon Tan wjsota at gmail.com
Fri Apr 22 10:08:54 EDT 2022


Hey all,

Could someone share what the coding style preference is where operator
precedence is concerned?

I notice in the staging drivers that there are many instances where
there are parenthesis in statements where operator precedence should be
(in my opinion) obvious. Yet, there doesn't seem to be a patch to amend
it. For example:

In vc04_services/interface/vchiq_arm/vchiq_core.c, line 2136, there is
```
slot_zero->master.slot_last = first_data_slot + (num_slots / 2) - 1;
```
It could just have been
```
slot_zero->master.slot_last = first_data_slot + num_slots / 2 - 1;
```
yet I do not see anyone patching it. Nothing is mentioned in the kernel
docs about operator precedence. Checkpatch.pl doesn't highlight it
as a coding style either. 

What is the concensus regarding operator precedence in kernel coding
style? The most relevant email thread I found suggests some feel the
parenthesis shouldnt be there, while others would leave it there for
readability.
https://lore.kernel.org/linux-staging/YRypyev4Ku3eI9w8@kroah.com/ 

Should I remove the parenthesis because it is technically unnecessary,
or should I leave it in for readability? Or should I just make the patch
request and let the maintainer decide?

Thank you.
Cheers,
Solomon



More information about the Kernelnewbies mailing list