aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
-rw-r--r--validation/used-to-be-signed.c49
1 files changed, 49 insertions, 0 deletions
diff --git a/validation/used-to-be-signed.c b/validation/used-to-be-signed.c
new file mode 100644
index 00000000..75eab7f3
--- /dev/null
+++ b/validation/used-to-be-signed.c
@@ -0,0 +1,49 @@
+void error(void);
+int check(void);
+
+static void positive_tests(unsigned int val)
+{
+ unsigned int ret = check();
+
+ if (ret < 0)
+ error();
+
+ if (0 > ret)
+ error();
+
+ if (ret >= 0)
+ /* Do stuff */;
+
+ if (0 <= ret)
+ /* Do stuff */;
+}
+
+static void negative_tests(unsigned int val)
+{
+ if (val < 0 || val > 42)
+ error();
+
+ if (0 > val || 42 < val)
+ error();
+
+ if (val >= 0 && val < 42)
+ /* Do stuff */;
+
+ if (0 <= val && 42 > val)
+ /* Do stuff */;
+}
+
+/*
+ * check-name: used-to-be-signed
+ *
+ * check-error-start
+used-to-be-signed.c:8:19: warning: unsigned value that used to be signed checked against zero?
+used-to-be-signed.c:6:33: signed value source
+used-to-be-signed.c:11:17: warning: unsigned value that used to be signed checked against zero?
+used-to-be-signed.c:6:33: signed value source
+used-to-be-signed.c:14:20: warning: unsigned value that used to be signed checked against zero?
+used-to-be-signed.c:6:33: signed value source
+used-to-be-signed.c:17:18: warning: unsigned value that used to be signed checked against zero?
+used-to-be-signed.c:6:33: signed value source
+ * check-error-end
+ */