# [PATCH] cocci: avoid "should ... be a metavariable" warnings

2 messages from 2022-11-30 to 2022-11-30. Participants: Ævar Arnfjörð Bjarmason, Junio C Hamano.
Thread: https://gitlist.dev/t/58873

## Ævar Arnfjörð Bjarmason, 2022-11-30 08:28

Subject: [PATCH] cocci: avoid "should ... be a metavariable" warnings
Message-ID: <patch-1.1-31af153702e-20221130T082521Z-avarab@gmail.com>
URL: https://gitlist.dev/e/patch-1.1-31af153702e-20221130T082521Z-avarab%40gmail.com

```
Since [1] running "make coccicheck" has resulted in [2] being emitted
to the *.log files for the "spatch" run, and in the case of "make
coccicheck-test" we'd emit these to the user's terminal.

Nothing was broken as a result, but let's refactor the relevant rules
to eliminate the ambiguity between a possible variable and an
identifier.

1. 0e6550a2c63 (cocci: add a index-compatibility.pending.cocci,
   2022-11-19)
2. warning: line 257: should active_cache be a metavariable?
   warning: line 260: should active_cache_changed be a metavariable?
   warning: line 263: should active_cache_tree be a metavariable?
   warning: line 271: should active_nr be a metavariable?

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
---

This warning can be seen e.g. in "master" CI at: https://github.com/git/git/actions/runs/3580246628/jobs/6022212792#step:4:81

Junio: Sorry about missing this, this would be new in v2.39.0, so I'm
submitting it now in case you'd like to pick it up for v2.39.0, but on
the other hand there's no negative impact here other than noisy "make"
output, and noisy coccinelle logs. So it could also wait until after
the release...

 contrib/coccinelle/index-compatibility.cocci | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/contrib/coccinelle/index-compatibility.cocci b/contrib/coccinelle/index-compatibility.cocci
index 4c1b890c3ef..8520f03128a 100644
--- a/contrib/coccinelle/index-compatibility.cocci
+++ b/contrib/coccinelle/index-compatibility.cocci
@@ -1,22 +1,26 @@
 // the_index.* variables
 @@
+identifier AC = active_cache;
+identifier ACC = active_cache_changed;
+identifier ACT = active_cache_tree;
 @@
 (
-- active_cache
+- AC
 + the_index.cache
 |
-- active_cache_changed
+- ACC
 + the_index.cache_changed
 |
-- active_cache_tree
+- ACT
 + the_index.cache_tree
 )
 
 @@
+identifier AN = active_nr;
 identifier f != prepare_to_commit;
 @@
   f(...) {<...
-- active_nr
+- AN
 + the_index.cache_nr
   ...>}
 
-- 
2.39.0.rc0.1028.gb88f24da998


```

## Junio C Hamano, 2022-11-30 22:26

Subject: Re: [PATCH] cocci: avoid "should ... be a metavariable" warnings
Message-ID: <xmqqlensulit.fsf@gitster.g>
URL: https://gitlist.dev/e/xmqqlensulit.fsf%40gitster.g
In-Reply-To: <patch-1.1-31af153702e-20221130T082521Z-avarab@gmail.com>

```
Ævar Arnfjörð Bjarmason  <avarab@gmail.com> writes:

> Since [1] running "make coccicheck" has resulted in [2] being emitted
> to the *.log files for the "spatch" run, and in the case of "make
> coccicheck-test" we'd emit these to the user's terminal.
>
> Nothing was broken as a result, but let's refactor the relevant rules
> to eliminate the ambiguity between a possible variable and an
> identifier.
>
> 1. 0e6550a2c63 (cocci: add a index-compatibility.pending.cocci,
>    2022-11-19)
> 2. warning: line 257: should active_cache be a metavariable?
>    warning: line 260: should active_cache_changed be a metavariable?
>    warning: line 263: should active_cache_tree be a metavariable?
>    warning: line 271: should active_nr be a metavariable?
>
> Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
> ---

Thanks.  Queued.

```
