From 9a8ec097c598e40b36f99d4ba1bb7ae8bf72b759 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 18 Apr 2023 14:25:09 -0700 Subject: Go back to dynamic largefile, year2038 tests Problem reported by Bruno Haible in: https://lists.gnu.org/r/bug-gnulib/2023-04/msg00134.html * modules/largefile-tests, modules/year2038-tests (Depends-on): Remove assert-h. * tests/test-largefile.c, tests/test-year2038.c: Test dynamically, not via static_assert. --- tests/test-largefile.c | 27 ++++++++++++++++++--------- tests/test-year2038.c | 7 ++++--- 2 files changed, 22 insertions(+), 12 deletions(-) (limited to 'tests') diff --git a/tests/test-largefile.c b/tests/test-largefile.c index ce5d8a0e2e..eb7861dae3 100644 --- a/tests/test-largefile.c +++ b/tests/test-largefile.c @@ -26,17 +26,26 @@ #include #include "intprops.h" -/* Check the range of off_t. - With MSVC, this test succeeds only thanks to the 'sys_types' module. */ -static_assert (TYPE_MAXIMUM (off_t) >> 31 >> 31 != 0); - -/* Check the size of the 'struct stat' field 'st_size'. - ,With MSVC, this test succeeds only thanks to the 'sys_stat' module. */ -static struct stat st; -static_assert (sizeof st.st_size == sizeof (off_t)); +/* Although these tests could be done with static_assert, the test + harness prefers dynamic checking. */ int main (void) { - return 0; + int result = 0; + + /* Check the range of off_t. + With MSVC, this test succeeds only thanks to the 'sys_types' module. */ + if (TYPE_MAXIMUM (off_t) >> 31 >> 31 == 0) + result |= 1; + + /* Check the size of the 'struct stat' field 'st_size'. + With MSVC, this test succeeds only thanks to the 'sys_stat' module. */ + { + struct stat st; + if (sizeof st.st_size != sizeof (off_t)) + result |= 2; + } + + return result; } diff --git a/tests/test-year2038.c b/tests/test-year2038.c index 0facf930ed..d1989eb432 100644 --- a/tests/test-year2038.c +++ b/tests/test-year2038.c @@ -28,11 +28,12 @@ #include #include "intprops.h" -/* Check the range of time_t. */ -static_assert (TYPE_MAXIMUM (time_t) >> 31 != 0); +/* Although this test could be done with static_assert, the test + harness prefers dynamic checking. */ int main (void) { - return 0; + /* Check the range of time_t. */ + return TYPE_MAXIMUM (time_t) >> 31 == 0; } -- cgit v1.2.1