>> @display@
>> expression e;
>> @@
>> *brelse(e);
>> <+... when != e = ...
>> (e = ...
>> |
>> *e
>> )...+>
>>
>>
>> I would find it nicer if I do not need to repeat a code exclusion
>> specification
>> as the first element of a SmPL disjunction for this special use case.
>
> You don't. The
On Wed, 10 Jun 2020, Markus Elfring wrote:
> >> I hoped that my specification of a SmPL code exclusion should prevent
> >> the presentation of assignments (independent from statements and/or
> >> expressions).
> >
> > (
> > e = e1
> > |
> > *e
> > )
>
> @display@
> expression e;
> @@
>
>> I hoped that my specification of a SmPL code exclusion should prevent
>> the presentation of assignments (independent from statements and/or
>> expressions).
>
> (
> e = e1
> |
> *e
> )
@display@
expression e;
@@
*brelse(e);
<+... when != e = ...
(e = ...
|
*e
)...+>
I would find it nicer
On Wed, 10 Jun 2020, Markus Elfring wrote:
> >> @display@
> >> expression e;
> >> @@
> >> *brelse(e);
> >> <+... when != e = ...
> >> *e
> >> ...+>
> …
> >> elfring@Sonne:~/Projekte/Linux/next-patched> spatch
> >> ~/Projekte/Coccinelle/janitor/show_questionable_brelse_usage8.cocci
> >>
>> @display@
>> expression e;
>> @@
>> *brelse(e);
>> <+... when != e = ...
>> *e
>> ...+>
…
>> elfring@Sonne:~/Projekte/Linux/next-patched> spatch
>> ~/Projekte/Coccinelle/janitor/show_questionable_brelse_usage8.cocci
>> fs/ext4/extents.c
>> …
>> @@ -1127,8 +1121,6 @@ static int
> That is quite normal. One statement should be followed by another statement.
I have tried another script variant out for the semantic patch language.
@display@
expression e;
@@
*brelse(e);
<+... when != e = ...
*e
...+>
I wonder about the generation of a diff hunk then like the