From: Ondřej Surý Date: Wed, 8 Oct 2025 15:03:18 +0000 (+0200) Subject: Update the semantic patches to use new development ideas X-Git-Tag: v9.21.15~73^2~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=60760420aa08409d3539831eed7c11efcf1c073b;p=thirdparty%2Fbind9.git Update the semantic patches to use new development ideas Co-Authored-By: Markus Elfring --- diff --git a/cocci/DNS_TYPEPAIR_VALUE.spatch b/cocci/DNS_TYPEPAIR_VALUE.spatch index 5172bd1a671..fe75b369269 100644 --- a/cocci/DNS_TYPEPAIR_VALUE.spatch +++ b/cocci/DNS_TYPEPAIR_VALUE.spatch @@ -1,7 +1,6 @@ +@replacement@ +expression e; @@ -identifier RRSIG = dns_rdatatype_rrsig; -expression T; -@@ - -- DNS_TYPEPAIR_VALUE(RRSIG, T) -+ DNS_SIGTYPEPAIR(T) +-DNS_TYPEPAIR_VALUE(dns_rdatatype_rrsig, ++DNS_SIGTYPE( + e) diff --git a/cocci/UV_RUNTIME_CHECK.spatch b/cocci/UV_RUNTIME_CHECK.spatch index 6a50195b893..78b6c0c01a2 100644 --- a/cocci/UV_RUNTIME_CHECK.spatch +++ b/cocci/UV_RUNTIME_CHECK.spatch @@ -1,8 +1,9 @@ -@@ +@replacement@ expression E; int R; @@ - - R = E(...); -- UV_RUNTIME_CHECK(...); -+ UV_RUNTIME_CHECK(E, R); + R = E(...); + UV_RUNTIME_CHECK( +- ... ++ E, R + ); diff --git a/cocci/ctype.spatch b/cocci/ctype.spatch index 2b392cb3101..43e2d1bddc3 100644 --- a/cocci/ctype.spatch +++ b/cocci/ctype.spatch @@ -1,105 +1,23 @@ -@@ -char T; -@@ - -- isalnum(T) -+ isalnum((unsigned char)T) - -@@ -char T; -@@ - -- isalpha(T) -+ isalpha((unsigned char)T) - -@@ -char T; -@@ - -- iscntrl(T) -+ iscntrl((unsigned char)T) - -@@ -char T; -@@ - -- isdigit(T) -+ isdigit((unsigned char)T) - -@@ -char T; -@@ - -- isgraph(T) -+ isgraph((unsigned char)T) - -@@ -char T; -@@ - -- islower(T) -+ islower((unsigned char)T) - -@@ -char T; -@@ - -- isprint(T) -+ isprint((unsigned char)T) - -@@ -char T; -@@ - -- ispunct(T) -+ ispunct((unsigned char)T) - -@@ -char T; -@@ - -- isspace(T) -+ isspace((unsigned char)T) - -@@ -char T; -@@ - -- isupper(T) -+ isupper((unsigned char)T) - -@@ -char T; -@@ - -- isxdigit(T) -+ isxdigit((unsigned char)T) - -@@ -char T; -@@ - -- isascii(T) -+ isascii((unsigned char)T) - -@@ -char T; -@@ - -- isblank(T) -+ isblank((unsigned char)T) - -@@ -char T; -@@ - -- tolower(T) -+ tolower((unsigned char)T) - -@@ -char T; -@@ - -- toupper(T) -+ toupper((unsigned char)T) - +@add_cast@ +char T; +@@ +(isalnum +|isalpha +|iscntrl +|isdigit +|isgraph +|islower +|isprint +|ispunct +|isspace +|isupper +|isxdigit +|isascii +|isblank +|tolower +|toupper +) + ( ++(unsigned char) + T + ) diff --git a/cocci/dns_message_destroy.spatch b/cocci/dns_message_destroy.spatch index 40435254138..ba60786c39f 100644 --- a/cocci/dns_message_destroy.spatch +++ b/cocci/dns_message_destroy.spatch @@ -1,6 +1,6 @@ +@renaming@ +expression e; @@ -expression M; -@@ - -- dns_message_destroy(M); -+ dns_message_detach(M); +-dns_message_destroy ++dns_message_detach + (e); diff --git a/cocci/dns_message_gettemp.disabled b/cocci/dns_message_gettemp.disabled index ed5a711ec97..feebefeb14f 100644 --- a/cocci/dns_message_gettemp.disabled +++ b/cocci/dns_message_gettemp.disabled @@ -1,155 +1,35 @@ -@@ -statement S; -expression V; -@@ - -- V = - dns_message_gettempname(...); -- if (V != ISC_R_SUCCESS) S - -@@ -statement S; -expression V; -@@ - -- V = - dns_message_gettemprdata(...); -- if (V != ISC_R_SUCCESS) S - -@@ +@deletion@ statement S; expression V; @@ - -- V = - dns_message_gettemprdataset(...); -- if (V != ISC_R_SUCCESS) S - -@@ -statement S; -expression V; -@@ - -- V = - dns_message_gettemprdatalist(...); -- if (V != ISC_R_SUCCESS) S - -@@ -@@ - -- CHECK( - dns_message_gettempname(...) -- ) - -@@ -@@ - -- CHECK( - dns_message_gettemprdata(...) -- ) - -@@ -@@ - -- CHECK( - dns_message_gettemprdataset(...) -- ) - -@@ -@@ - -- CHECK( - dns_message_gettemprdatalist(...) -- ) - -@@ -@@ - -- RETERR( - dns_message_gettempname(...) -- ) - -@@ -@@ - -- RETERR( - dns_message_gettemprdata(...) -- ) - -@@ -@@ - -- RETERR( - dns_message_gettemprdataset(...) -- ) - -@@ -@@ - -- RETERR( - dns_message_gettemprdatalist(...) -- ) - -@@ -expression V; -@@ - -- V = - dns_message_gettempname(...); -- check_result(V, ...); - -@@ -expression V; -@@ - -- V = - dns_message_gettemprdata(...); -- check_result(V, ...); - -@@ -expression V; -@@ - -- V = - dns_message_gettemprdataset(...); -- check_result(V, ...); - -@@ -expression V; -@@ - -- V = - dns_message_gettemprdatalist(...); -- check_result(V, ...); - -@@ -expression V; -@@ - -- V = - dns_message_gettempname(...); -- CHECK(..., V); - -@@ -expression V; -@@ - -- V = - dns_message_gettemprdata(...); -- CHECK(..., V); - -@@ -expression V; -@@ - -- V = - dns_message_gettemprdataset(...); -- CHECK(..., V); - -@@ -expression V; -@@ - -- V = - dns_message_gettemprdatalist(...); -- CHECK(..., V); +( +-V = +( dns_message_gettempname +| dns_message_gettemprdata +| dns_message_gettemprdataset +| dns_message_gettemprdatalist +) + (...); +( +-if (V != ISC_R_SUCCESS) S +| +( +-check_result(V, ...) +| +-CHECK(..., V) +); +) +| +( +-CHECK +| +-RETERR +) +-( +( dns_message_gettempname +| dns_message_gettemprdata +| dns_message_gettemprdataset +| dns_message_gettemprdatalist +) +-) +) diff --git a/cocci/dns_rbtnodechain_init.disabled b/cocci/dns_rbtnodechain_init.disabled index 1c02a8335d7..7dea361a997 100644 --- a/cocci/dns_rbtnodechain_init.disabled +++ b/cocci/dns_rbtnodechain_init.disabled @@ -1,7 +1,7 @@ +@deletion@ +expression C, M; @@ -expression C; -expression M; -@@ + dns_rbtnodechain_init(C +- , M + ); -- dns_rbtnodechain_init(C, M); -+ dns_rbtnodechain_init(C); diff --git a/cocci/isc_buffer_allocate_never_fail.spatch b/cocci/isc_buffer_allocate_never_fail.spatch index bc02f1429e8..2c9fd621a8a 100644 --- a/cocci/isc_buffer_allocate_never_fail.spatch +++ b/cocci/isc_buffer_allocate_never_fail.spatch @@ -1,75 +1,38 @@ -@@ -statement S; -expression V; -@@ - -- V = - isc_buffer_allocate(...); -- if (V != ISC_R_SUCCESS) S - -@@ +@deletion1@ statement S1, S2; expression V; @@ - -- V = - isc_buffer_allocate(...); -- if (V == ISC_R_SUCCESS) - S1 -- else S2 - -@@ -expression V; -@@ - -- V = - isc_buffer_allocate(...); -- check_result(V, ...); - -@@ -@@ - -- CHECK( - isc_buffer_allocate(...) -- ) - ; - -@@ -@@ - -- DO(..., - isc_buffer_allocate(...) -- ) - ; - -@@ -@@ - -- RETERR( - isc_buffer_allocate(...) -- ) - ; - -@@ -expression V; -@@ - -- V = - isc_buffer_allocate(...); -- assert_int_equal(V, ISC_R_SUCCESS); - -@@ -expression V; -@@ - -- V = - isc_buffer_allocate(...); -- CHECK(..., V); - -@@ -expression V; -@@ - -- V = - isc_buffer_allocate(...); -- RUNTIME_CHECK(V == ISC_R_SUCCESS); +-V = + isc_buffer_allocate(...); +( +-if (V != ISC_R_SUCCESS) S1 +| +-if (V == ISC_R_SUCCESS) + S1 +-else S2 +| +-check_result(V, ...); +| +-assert_int_equal(V, ISC_R_SUCCESS); +| +-CHECK(..., V); +| +-RUNTIME_CHECK(V == ISC_R_SUCCESS); +) + +@deletion2@ +@@ +( +( +-CHECK +| +-RETERR +) +-( + isc_buffer_allocate(...) +-) +| +-DO(..., + isc_buffer_allocate(...) +-) +); diff --git a/cocci/isc_mem_allocate_never_fail.spatch b/cocci/isc_mem_allocate_never_fail.spatch index c7e60690614..420860007d0 100644 --- a/cocci/isc_mem_allocate_never_fail.spatch +++ b/cocci/isc_mem_allocate_never_fail.spatch @@ -1,41 +1,19 @@ -@@ -statement S; -expression V; -@@ - -V = isc_mem_allocate(...); -- if (V == NULL) S - -@@ +@deletion@ type T; -statement S; -expression V; -@@ - -V = (T *)isc_mem_allocate(...); -- if (V == NULL) S - -@@ -statement S; -expression V; -@@ - -if (V == NULL) V = isc_mem_allocate(...); -- if (V == NULL) S - -@@ statement S1, S2; -expression V; -@@ - -V = isc_mem_allocate(...); -- if (V == NULL) S1 else { S2 } -+ S2 - -@@ -type T; expression V, E1, E2; @@ - -- V = (T)isc_mem_allocate(E1, E2); -+ V = isc_mem_allocate(E1, E2); +(V = +(isc_mem_allocate +|(T *)isc_mem_allocate +)(...); +-if (V == NULL) S1 +|V = isc_mem_allocate(...); +-if (V == NULL) S1 else { S2 } ++S2 +|if (V == NULL) V = isc_mem_allocate(...); +-if (V == NULL) S1 +|V = +- (T) + isc_mem_allocate(E1, E2); +) diff --git a/cocci/isc_mem_cget.spatch b/cocci/isc_mem_cget.spatch index af2fb5b224a..fecec610943 100644 --- a/cocci/isc_mem_cget.spatch +++ b/cocci/isc_mem_cget.spatch @@ -1,161 +1,136 @@ -@@ -expression MCTX, COUNT; -type ELEM; -@@ - -- isc_mem_get(MCTX, COUNT * sizeof(ELEM)) -+ isc_mem_cget(MCTX, COUNT, sizeof(ELEM)) - -@@ +@replacement1@ expression MCTX, COUNT, ELEM; -@@ - -- isc_mem_get(MCTX, COUNT * sizeof(ELEM)) -+ isc_mem_cget(MCTX, COUNT, sizeof(ELEM)) - -@@ -expression MCTX, OLD_PTR, COUNT; -type ELEM; -@@ - -- isc_mem_put(MCTX, OLD_PTR, COUNT * sizeof(ELEM)) -+ isc_mem_cput(MCTX, OLD_PTR, COUNT, sizeof(ELEM)) - -@@ +type T; +@@ +-isc_mem_get ++isc_mem_cget + (MCTX, +( +- COUNT * sizeof(ELEM) ++ COUNT, sizeof(ELEM) +| +- COUNT * sizeof(T) ++ COUNT, sizeof(T) +) + ) + +@replacement2@ expression MCTX, OLD_PTR, COUNT, ELEM; -@@ - -- isc_mem_put(MCTX, OLD_PTR, COUNT * sizeof(ELEM)) -+ isc_mem_cput(MCTX, OLD_PTR, COUNT, sizeof(ELEM)) - -@@ -expression MCTX, COUNT; -type ELEM; -@@ - -- isc_mem_get(MCTX, sizeof(ELEM) * COUNT) -+ isc_mem_cget(MCTX, COUNT, sizeof(ELEM)) - -@@ -expression MCTX, COUNT, ELEM; -@@ - -- isc_mem_get(MCTX, sizeof(ELEM) * COUNT) -+ isc_mem_cget(MCTX, COUNT, sizeof(ELEM)) - -@@ -expression MCTX, OLD_PTR, COUNT; -type ELEM; -@@ - -- isc_mem_put(MCTX, OLD_PTR, sizeof(ELEM) * COUNT) -+ isc_mem_cput(MCTX, OLD_PTR, COUNT, sizeof(ELEM)) - -@@ -expression MCTX, OLD_PTR, COUNT, ELEM; -@@ - -- isc_mem_put(MCTX, OLD_PTR, sizeof(ELEM) * COUNT) -+ isc_mem_cput(MCTX, OLD_PTR, COUNT, sizeof(ELEM)) - -@@ -expression MCTX, OLD_PTR, NEW_PTR, OLD_COUNT, NEW_COUNT; -identifier OLD_SIZE, NEW_SIZE; -type ELEM; -@@ - -- size_t OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- size_t NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ +type T; +@@ +-isc_mem_put ++isc_mem_cput + (MCTX, + OLD_PTR, +( +- COUNT * sizeof(ELEM) ++ COUNT, sizeof(ELEM) +| +- COUNT * sizeof(T) ++ COUNT, sizeof(T) +) + ) + +@replacement3@ expression MCTX, OLD_PTR, NEW_PTR, OLD_COUNT, NEW_COUNT, ELEM; identifier OLD_SIZE, NEW_SIZE; -@@ - -- size_t OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- size_t NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ -expression MCTX, OLD_PTR, NEW_PTR, OLD_COUNT, NEW_COUNT; -identifier OLD_SIZE, NEW_SIZE; -type ELEM; -@@ - -- size_t NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- size_t OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ -expression MCTX, OLD_PTR, NEW_PTR, OLD_COUNT, NEW_COUNT, ELEM; -identifier OLD_SIZE, NEW_SIZE; -@@ - -- size_t NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- size_t OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ -expression MCTX, OLD_PTR, NEW_PTR, OLD_SIZE, OLD_COUNT, NEW_SIZE, NEW_COUNT; -type ELEM; -@@ - -- OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ -expression MCTX, OLD_PTR, NEW_PTR, OLD_SIZE, OLD_COUNT, NEW_SIZE, NEW_COUNT, ELEM; -@@ - -- OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ -expression MCTX, OLD_PTR, NEW_PTR, OLD_SIZE, OLD_COUNT, NEW_SIZE, NEW_COUNT; -type ELEM; -@@ - -- NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ +type T; +@@ +( +( +-size_t OLD_SIZE = OLD_COUNT * sizeof(ELEM); +-size_t NEW_SIZE = NEW_COUNT * sizeof(ELEM); +| +-size_t NEW_SIZE = NEW_COUNT * sizeof(ELEM); +-size_t OLD_SIZE = OLD_COUNT * sizeof(ELEM); +) + NEW_PTR = +- isc_mem_reget ++ isc_mem_creget + (MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE ++ , sizeof(ELEM) + ); +| +( +-size_t OLD_SIZE = OLD_COUNT * sizeof(T); +-size_t NEW_SIZE = NEW_COUNT * sizeof(T); +| +-size_t NEW_SIZE = NEW_COUNT * sizeof(T); +-size_t OLD_SIZE = OLD_COUNT * sizeof(T); +) + NEW_PTR = +- isc_mem_reget ++ isc_mem_creget + (MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE ++ , sizeof(T) + ); +) + +@replacement4@ expression MCTX, OLD_PTR, NEW_PTR, OLD_SIZE, OLD_COUNT, NEW_SIZE, NEW_COUNT, ELEM; -@@ - -- NEW_SIZE = NEW_COUNT * sizeof(ELEM); -- OLD_SIZE = OLD_COUNT * sizeof(ELEM); -- NEW_PTR = isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE); -+ NEW_PTR = isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)); - -@@ -expression MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT; -type ELEM; -@@ - -- isc_mem_reget(MCTX, OLD_PTR, OLD_COUNT * sizeof(ELEM), NEW_COUNT * sizeof(ELEM)) -+ isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)) - -@@ +type T; +@@ +( +( +-OLD_SIZE = OLD_COUNT * sizeof(ELEM); +-NEW_SIZE = NEW_COUNT * sizeof(ELEM); +| +-NEW_SIZE = NEW_COUNT * sizeof(ELEM); +-OLD_SIZE = OLD_COUNT * sizeof(ELEM); +) + NEW_PTR = +- isc_mem_reget ++ isc_mem_creget + (MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE ++ , sizeof(ELEM) + ); +| +( +-OLD_SIZE = OLD_COUNT * sizeof(T); +-NEW_SIZE = NEW_COUNT * sizeof(T); +| +-NEW_SIZE = NEW_COUNT * sizeof(T); +-OLD_SIZE = OLD_COUNT * sizeof(T); +) + NEW_PTR = +- isc_mem_reget ++ isc_mem_creget + (MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE ++ , sizeof(T) + ); +) + +@replacement5@ expression MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, ELEM; -@@ - -- isc_mem_reget(MCTX, OLD_PTR, OLD_COUNT * sizeof(ELEM), NEW_COUNT * sizeof(ELEM)) -+ isc_mem_creget(MCTX, OLD_PTR, OLD_COUNT, NEW_COUNT, sizeof(ELEM)) - -@@ +type T; +@@ +-isc_mem_reget ++isc_mem_creget + (MCTX, + OLD_PTR, +( +- OLD_COUNT * sizeof(ELEM) ++ OLD_COUNT + , +- NEW_COUNT * sizeof(ELEM) ++ NEW_COUNT, sizeof(ELEM) +| +- OLD_COUNT * sizeof(T) ++ OLD_COUNT + , +- NEW_COUNT * sizeof(T) ++ NEW_COUNT, sizeof(T) +) + ) + +@replacement6@ expression MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE; @@ - -- isc_mem_reget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE) -+ isc_mem_creget(MCTX, OLD_PTR, OLD_SIZE, NEW_SIZE, sizeof(char)) +-isc_mem_reget ++isc_mem_creget + (MCTX, + OLD_PTR, + OLD_SIZE, + NEW_SIZE ++ , sizeof(char) + ) diff --git a/cocci/isc_mem_get_never_fail.spatch b/cocci/isc_mem_get_never_fail.spatch index e79a0404a16..bacf10f40b8 100644 --- a/cocci/isc_mem_get_never_fail.spatch +++ b/cocci/isc_mem_get_never_fail.spatch @@ -1,41 +1,19 @@ -@@ -statement S; -expression V; -@@ - -V = isc_mem_get(...); -- if (V == NULL) S - -@@ +@deletion@ type T; -statement S; -expression V; -@@ - -V = (T *)isc_mem_get(...); -- if (V == NULL) S - -@@ -statement S; -expression V; -@@ - -if (V == NULL) V = isc_mem_get(...); -- if (V == NULL) S - -@@ statement S1, S2; -expression V; -@@ - -V = isc_mem_get(...); -- if (V == NULL) S1 else { S2 } -+ S2 - -@@ -type T; expression V, E1, E2; @@ - -- V = (T)isc_mem_get(E1, E2); -+ V = isc_mem_get(E1, E2); +(V = +(isc_mem_get +|(T *)isc_mem_get +)(...); +-if (V == NULL) S1 +|V = isc_mem_get(...); +-if (V == NULL) S1 else { S2 } ++S2 +|if (V == NULL) V = isc_mem_get(...); +-if (V == NULL) S1 +|V = +- (T) + isc_mem_get(E1, E2); +) diff --git a/cocci/isc_mem_macros.spatch b/cocci/isc_mem_macros.spatch index 43fa8ccd44c..b31611549ea 100644 --- a/cocci/isc_mem_macros.spatch +++ b/cocci/isc_mem_macros.spatch @@ -1,80 +1,42 @@ -@@ -expression e1, e2; -@@ - -isc_mem_free(e1, e2); -- e2 = NULL; - -@@ -expression e1, e2; -@@ - -if (e2 != NULL) { -isc_mem_free(e1, e2); -} -- e2 = NULL; - -@@ +@deletion1@ expression e1, e2; @@ - -isc_mempool_put(e1, e2); -- e2 = NULL; - -@@ -expression e1, e2; -@@ - -if (e2 != NULL) { -isc_mempool_put(e1, e2); -} -- e2 = NULL; - -@@ -expression e1, e2, e3; -@@ - -isc_mem_put(e1, e2, e3); -- e2 = NULL; - -@@ -expression e1, e2, e3; -@@ - -if (e2 != NULL) { -isc_mem_put(e1, e2, e3); -} -- e2 = NULL; - -@@ -expression e1, e2, e3; -@@ - -isc_mem_putanddetach(e1, e2, e3); -- e2 = NULL; - -@@ +( +(isc_mem_free +|isc_mempool_put +)(e1, e2); +|if (e2 != NULL) + { +( isc_mem_free +| isc_mempool_put +)(e1, e2); + } +) +-e2 = NULL; + +@deletion2@ expression e1, e2, e3; @@ - -if (e2 != NULL) { -isc_mem_putanddetach(e1, e2, e3); -} -- e2 = NULL; - -@@ +( +(isc_mem_put +|isc_mem_putanddetach +)(e1, e2, e3); +|if (e2 != NULL) + { +( isc_mem_put +| isc_mem_putanddetach +)(e1, e2, e3); + } +) +-e2 = NULL; + +@deletion3@ expression e1, e2, e3, e4; @@ - -isc_mem_cput(e1, e2, e3, e4); -- e2 = NULL; - -@@ -expression e1, e2, e3, e4; -@@ - -if (e2 != NULL) { -isc_mem_cput(e1, e2, e3, e4); -} -- e2 = NULL; - +(isc_mem_cput(e1, e2, e3, e4); +|if (e2 != NULL) + { + isc_mem_cput(e1, e2, e3, e4); + } +) +-e2 = NULL; diff --git a/cocci/isc_mem_putanddetach.spatch b/cocci/isc_mem_putanddetach.spatch index 0f29779158b..9e21e2c82f9 100644 --- a/cocci/isc_mem_putanddetach.spatch +++ b/cocci/isc_mem_putanddetach.spatch @@ -1,8 +1,10 @@ +@adjustment@ +expression M, E1, E2; @@ -expression M; -expression E1, E2; -@@ - -- isc_mem_put(M, E1, E2); -- isc_mem_detach(&M); -+ isc_mem_putanddetach(&M, E1, E2); +-isc_mem_put ++isc_mem_putanddetach + ( ++ & + M, E1, E2 + ); +-isc_mem_detach(&M); diff --git a/cocci/isc_mem_strdup_never_fail.spatch b/cocci/isc_mem_strdup_never_fail.spatch index 41cccdb8b57..627dc2347ed 100644 --- a/cocci/isc_mem_strdup_never_fail.spatch +++ b/cocci/isc_mem_strdup_never_fail.spatch @@ -1,33 +1,16 @@ -@@ -statement S; -expression V; -@@ - -V = isc_mem_strdup(...); -- if (V == NULL) S - -@@ +@deletion@ type T; -statement S; -expression V; -@@ - -V = (T *)isc_mem_strdup(...); -- if (V == NULL) S - -@@ -statement S; -expression V; -@@ - -if (V == NULL) V = isc_mem_strdup(...); -- if (V == NULL) S - -@@ statement S1, S2; expression V; @@ - -V = isc_mem_strdup(...); -- if (V == NULL) S1 else { S2 } -+ S2 +(V = +(isc_mem_strdup +|(T *)isc_mem_strdup +)(...); +-if (V == NULL) S1 +|if (V == NULL) V = isc_mem_strdup(...); +-if (V == NULL) S1 +|V = isc_mem_strdup(...); +-if (V == NULL) S1 else { S2 } ++S2 +) diff --git a/cocci/isc_mempool_get_never_fail.spatch b/cocci/isc_mempool_get_never_fail.spatch index 232ff9b3693..873679825e8 100644 --- a/cocci/isc_mempool_get_never_fail.spatch +++ b/cocci/isc_mempool_get_never_fail.spatch @@ -1,41 +1,19 @@ -@@ -statement S; -expression V; -@@ - -V = isc_mempool_get(...); -- if (V == NULL) S - -@@ +@deletion@ type T; -statement S; -expression V; -@@ - -V = (T *)isc_mempool_get(...); -- if (V == NULL) S - -@@ -statement S; -expression V; -@@ - -if (V == NULL) V = isc_mempool_get(...); -- if (V == NULL) S - -@@ statement S1, S2; -expression V; -@@ - -V = isc_mempool_get(...); -- if (V == NULL) S1 else { S2 } -+ S2 - -@@ -type T; expression V, E1, E2; @@ - -- V = (T)isc_mempool_get(E1, E2); -+ V = isc_mempool_get(E1, E2); +(V = +(isc_mempool_get +|(T *)isc_mempool_get +)(...); +-if (V == NULL) S1 +|V = isc_mempool_get(...); +-if (V == NULL) S1 else { S2 } ++S2 +|if (V == NULL) V = isc_mempool_get(...); +-if (V == NULL) S1 +|V = +- (T) + isc_mempool_get(E1, E2); +) diff --git a/cocci/memcpy.spatch b/cocci/memcpy.spatch index f5e50e7142f..9ada6f63e15 100644 --- a/cocci/memcpy.spatch +++ b/cocci/memcpy.spatch @@ -1,14 +1,10 @@ @has_string_h@ @@ - #include @depends on has_string_h@ - -expression D; -expression S; -expression N; +expression D, S, N; @@ - -- memcpy(D, S, N); -+ memmove(D, S, N); +-memcpy ++memmove + (D, S, N); diff --git a/cocci/return-void-from-void.spatch b/cocci/return-void-from-void.spatch index fcc639f6ea0..a417c55ee7f 100644 --- a/cocci/return-void-from-void.spatch +++ b/cocci/return-void-from-void.spatch @@ -1,19 +1,17 @@ -@ rule1 @ +@rule1@ identifier f1; @@ + void f1(...) + { + ... + } -void f1(...) -{ -... -} - -@ rule2 @ -identifier rule1.f1; -identifier f2; +@rule2@ +identifier rule1.f1, f2; @@ - -void f2(...) { -... -* return(f1(...)); -... -} + void f2(...) + { + <+... +*return(f1(...)); + ...+> + } diff --git a/cocci/set_if_not_null.spatch b/cocci/set_if_not_null.spatch index ce44d672502..c7a6d2df2cb 100644 --- a/cocci/set_if_not_null.spatch +++ b/cocci/set_if_not_null.spatch @@ -1,14 +1,15 @@ -@@ +@replacement@ type T; -identifier fun; -identifier arg; +identifier fun, arg; expression val; @@ - fun(..., T *arg, ...) { - ... -- if (arg != NULL) { -- *arg = val; -- } -+ SET_IF_NOT_NULL(arg, val); - ... - } + fun(..., T *arg, ...) + { + <+... +- if (arg != NULL) +- { +- *arg = val; +- } ++ SET_IF_NOT_NULL(arg, val); + ...+> + } diff --git a/cocci/unreachable.spatch b/cocci/unreachable.spatch index 84c0c344bb5..f6db44c5610 100644 --- a/cocci/unreachable.spatch +++ b/cocci/unreachable.spatch @@ -1,19 +1,19 @@ +@replacement@ @@ -@@ - -- INSIST(0); -+ UNREACHABLE(); - ... when != UNREACHABLE(); - -@@ -@@ - -- INSIST(0); -- ISC_UNREACHABLE(); -+ UNREACHABLE(); +( +-INSIST(0); ++UNREACHABLE(); + ... when != UNREACHABLE(); +| +-INSIST(0); +-ISC_UNREACHABLE ++UNREACHABLE + (); +) +@deletion@ @@ -@@ - -- UNREACHABLE(); - UNREACHABLE(); + <+... +-UNREACHABLE(); + ...+> + UNREACHABLE();