> Given that coccinelle understands c structure, and knows about common 
> isomorphisms,
> is there an easy way so that I can instruct it to analyze every expression in
> my source code, and remove parentheses at every place they’re not needed?

There are various preconditions to consider.


> By not needed, I mean that the c expression meaning (taking into account 
> operator
> precedence and the like) is the same with and without parentheses.

Software developers and source code reviewers can have strong opinions about the
placement for their parentheses.

Coding style specifications often recommend a code structure for reasonable
readability and not what compilation software can handle in principle.


> I’m working with a 200000 LOC codebase. So, if there’s no dependable way to 
> do this
> (without false positives and the like), then I’d have to manually review 
> every change.

Which error rate can you tolerate for your source code analysis and
eventually automatic transformations?

Do you get further ideas from the section "4.2.1 How to remove useless 
parentheses?"
in Coccinelle's manual?


> Feasibility of that depends on how many instances are found, which I cannot 
> now
> in advance. If they are too many and I have to review them manually,
> then this is probably not worth the trouble.

Do efforts naturally evolve with the desire to come closer to a kind of 
perfection?

Regards,
Markus
_______________________________________________
Cocci mailing list
[email protected]
https://systeme.lip6.fr/mailman/listinfo/cocci

Reply via email to