diff --git a/scripts/coccinelle/auto-propagated-errp.cocci
b/scripts/coccinelle/auto-propagated-errp.cocci
index bff274bd6d..492a4db826 100644
--- a/scripts/coccinelle/auto-propagated-errp.cocci
+++ b/scripts/coccinelle/auto-propagated-errp.cocci
@@ -35,12 +35,12 @@
// error_propagate_prepend().
@ depends on !(file in "util/error.c") disable optional_qualifier@
identifier fn;
-identifier _errp != errp;
+identifier _errp;
@@
fn(...,
- Error **_errp
-+ Error **errp
++ Error **____
,...)
{
(
@@ -48,7 +48,7 @@ identifier _errp != errp;
&
<...
- _errp
-+ errp
++ ____
...>
)
}
@@ -63,26 +63,26 @@ identifier _errp != errp;
// all possible control flows (otherwise, it will not match standard pattern
// when error_propagate() call is in if branch).
@ disable optional_qualifier exists@
-identifier fn, local_err, errp;
+identifier fn, local_err;
@@
- fn(..., Error **errp, ...)
+ fn(..., Error **____, ...)
{
+ ERRP_AUTO_PROPAGATE();
... when != ERRP_AUTO_PROPAGATE();
(
- error_append_hint(errp, ...);
+ error_append_hint(____, ...);
|
- error_prepend(errp, ...);
+ error_prepend(____, ...);
|
- error_vprepend(errp, ...);
+ error_vprepend(____, ...);
|
Error *local_err = NULL;
...
(
- error_propagate_prepend(errp, local_err, ...);
+ error_propagate_prepend(____, local_err, ...);
|
- error_propagate(errp, local_err);
+ error_propagate(____, local_err);
)
)
... when any
@@ -92,18 +92,17 @@ identifier fn, local_err, errp;
// Match scenarios with propagation of local error to errp.
@rule1 disable optional_qualifier exists@
identifier fn, local_err;
-symbol errp;
@@
- fn(..., Error **errp, ...)
+ fn(..., Error **____, ...)
{
...
Error *local_err = NULL;
...
(
- error_propagate_prepend(errp, local_err, ...);
+ error_propagate_prepend(____, local_err, ...);
|
- error_propagate(errp, local_err);
+ error_propagate(____, local_err);
)
...
}
@@ -118,7 +117,6 @@ symbol errp;
// without error_propagate() call), coccinelle fails to match this "out: }".
@@
identifier rule1.fn, rule1.local_err, out;
-symbol errp;
@@
fn(...)
@@ -128,7 +126,7 @@ symbol errp;
+ return;
...>
- out:
-- error_propagate(errp, local_err);
+- error_propagate(____, local_err);
}
// Convert most of local_err related staff.
@@ -159,7 +157,6 @@ symbol errp;
@ exists@
identifier rule1.fn, rule1.local_err;
expression list args;
-symbol errp;
@@
fn(...)
@@ -172,30 +169,30 @@ symbol errp;
// Convert error clearing functions
(
- error_free(local_err);
-+ error_free_errp(errp);
++ error_free_errp(____);
|
- error_report_err(local_err);
-+ error_report_errp(errp);
++ error_report_errp(____);
|
- error_reportf_err(local_err, args);
-+ error_reportf_errp(errp, args);
++ error_reportf_errp(____, args);
|
- warn_report_err(local_err);
-+ warn_report_errp(errp);
++ warn_report_errp(____);
|
- warn_reportf_err(local_err, args);
-+ warn_reportf_errp(errp, args);
++ warn_reportf_errp(____, args);
)
?- local_err = NULL;
|
-- error_propagate_prepend(errp, local_err, args);
-+ error_prepend(errp, args);
+- error_propagate_prepend(____, local_err, args);
++ error_prepend(____, args);
|
-- error_propagate(errp, local_err);
+- error_propagate(____, local_err);
|
- &local_err
-+ errp
++ ____
)
...>
}
@@ -205,27 +202,43 @@ symbol errp;
// conflicts with other substitutions in it (at least with "- local_err =
NULL").
@@
identifier rule1.fn, rule1.local_err;
-symbol errp;
@@
fn(...)
{
<...
- local_err
-+ *errp
++ *____
...>
}
// Always use the same patter for checking error
@@
identifier rule1.fn;
-symbol errp;
@@
fn(...)
{
<...
-- *errp != NULL
-+ *errp
+- *____ != NULL
++ *____
...>
}
+
+@@
+identifier fn;
+symbol errp;
+@@
+
+ fn(...,
+- Error **____
++ Error **errp
+ ,...)
+ {
+ ...
+ }
+
+@@
+@@
+-____
++errp