summaryrefslogtreecommitdiffstats
path: root/coccinelle/timestamp-is-set.cocci
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 15:35:18 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 15:35:18 +0000
commitb750101eb236130cf056c675997decbac904cc49 (patch)
treea5df1a06754bdd014cb975c051c83b01c9a97532 /coccinelle/timestamp-is-set.cocci
parentInitial commit. (diff)
downloadsystemd-b750101eb236130cf056c675997decbac904cc49.tar.xz
systemd-b750101eb236130cf056c675997decbac904cc49.zip
Adding upstream version 252.22.upstream/252.22
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'coccinelle/timestamp-is-set.cocci')
-rw-r--r--coccinelle/timestamp-is-set.cocci73
1 files changed, 73 insertions, 0 deletions
diff --git a/coccinelle/timestamp-is-set.cocci b/coccinelle/timestamp-is-set.cocci
new file mode 100644
index 0000000..2d251fa
--- /dev/null
+++ b/coccinelle/timestamp-is-set.cocci
@@ -0,0 +1,73 @@
+/* SPDX-License-Identifier: LGPL-2.1-or-later */
+@@
+expression x;
+constant USEC_INFINITY = USEC_INFINITY;
+/* We want to stick with the literal expression in the implementation of timestamp_is_set(), i.e. in time-util.c */
+position p : script:python() { p[0].file != "src/basic/time-util.h" };
+@@
+(
+- x > 0 && x < USEC_INFINITY
++ timestamp_is_set(x)
+|
+- x < USEC_INFINITY && x > 0
++ timestamp_is_set(x)
+|
+- x@p > 0 && x != USEC_INFINITY
++ timestamp_is_set(x)
+|
+- x != USEC_INFINITY && x > 0
++ timestamp_is_set(x)
+|
+- x != 0 && x < USEC_INFINITY
++ timestamp_is_set(x)
+|
+- x < USEC_INFINITY && x != 0
++ timestamp_is_set(x)
+|
+- x != 0 && x != USEC_INFINITY
++ timestamp_is_set(x)
+|
+- x != USEC_INFINITY && x != 0
++ timestamp_is_set(x)
+|
+- !IN_SET(x, 0, USEC_INFINITY)
++ timestamp_is_set(x)
+|
+- !IN_SET(x, USEC_INFINITY, 0)
++ timestamp_is_set(x)
+)
+@@
+expression x;
+constant USEC_INFINITY = USEC_INFINITY;
+@@
+(
+- x <= 0 || x >= USEC_INFINITY
++ !timestamp_is_set(x)
+|
+- x >= USEC_INFINITY || x <= 0
++ !timestamp_is_set(x)
+|
+- x <= 0 || x == USEC_INFINITY
++ !timestamp_is_set(x)
+|
+- x == USEC_INFINITY || x <= 0
++ !timestamp_is_set(x)
+|
+- x == 0 || x >= USEC_INFINITY
++ !timestamp_is_set(x)
+|
+- x >= USEC_INFINITY || x == 0
++ !timestamp_is_set(x)
+|
+- x == 0 || x == USEC_INFINITY
++ !timestamp_is_set(x)
+|
+- x == USEC_INFINITY || x == 0
++ !timestamp_is_set(x)
+|
+- IN_SET(x, 0, USEC_INFINITY)
++ !timestamp_is_set(x)
+|
+- IN_SET(x, USEC_INFINITY, 0)
++ !timestamp_is_set(x)
+)