aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2022-03-25 11:26:46 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2024-02-09 10:29:18 -0300
commitab4559ac2dfd25c8cb5d8cc3687843ab80263ea4 (patch)
tree496a342bb9e01f508f5a2d76e922d89d1a611a02
parentc7cd096274ef7ac06d08464f3574ce7915bad4c7 (diff)
downloadglibc-ab4559ac2dfd25c8cb5d8cc3687843ab80263ea4.tar
glibc-ab4559ac2dfd25c8cb5d8cc3687843ab80263ea4.tar.gz
glibc-ab4559ac2dfd25c8cb5d8cc3687843ab80263ea4.tar.bz2
glibc-ab4559ac2dfd25c8cb5d8cc3687843ab80263ea4.zip
support: Suppress clang warning on tst-timespec
clang warns that converting from TIME_T_MAX to double (upper_bound) loses precision (from 9223372036854775807 to 9223372036854775808): tst-timespec.c:290:19: error: implicit conversion from 'time_t' (aka 'long') to 'double' changes value from 9223372036854775807 to 9223372036854775808 [-Werror,-Wimplicit-const-int-float-conversion] .upper_bound = TIME_T_MAX, .lower_bound = 1, .result = 1, ^~~~~~~~~~ tst-timespec.c:48:20: note: expanded from macro 'TIME_T_MAX' #define TIME_T_MAX TYPE_MAXIMUM (time_t) ^~~~~~~~~~~~~~~~~~~~~ ../include/intprops.h:57:4: note: expanded from macro 'TYPE_MAXIMUM' ((t) (! TYPE_SIGNED (t) \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ It does not matter for the test. Checked on x86_64-linux-gnu.
-rw-r--r--support/tst-timespec.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/support/tst-timespec.c b/support/tst-timespec.c
index 66fc42c03d..d622e741ec 100644
--- a/support/tst-timespec.c
+++ b/support/tst-timespec.c
@@ -20,6 +20,7 @@
#include <support/check.h>
#include <limits.h>
#include <intprops.h>
+#include <libc-diag.h>
#define TIMESPEC_HZ 1000000000
@@ -179,6 +180,11 @@ struct timespec_norm_test_case norm_cases[] = {
}
};
+/* clang warns that converting from TIME_T_MAX to double (upper_bound)
+ loses precision (from 9223372036854775807 to 9223372036854775808).
+ It does not matter in tests below. */
+DIAG_PUSH_NEEDS_COMMENT_CLANG;
+DIAG_IGNORE_NEEDS_COMMENT_CLANG (13, "-Wimplicit-const-int-float-conversion");
/* Test cases for timespec_check_in_range */
struct timespec_test_case check_cases[] = {
/* 0 - In range */
@@ -290,6 +296,7 @@ struct timespec_test_case check_cases[] = {
.upper_bound = TIME_T_MAX, .lower_bound = 1, .result = 1,
},
};
+DIAG_POP_NEEDS_COMMENT_CLANG;
static int
do_test (void)