mirror of
https://https.git.savannah.gnu.org/git/gnulib.git
synced 2026-09-01 02:34:55 +00:00
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.
This commit is contained in:
@@ -1,5 +1,13 @@
|
||||
2023-04-18 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
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.
|
||||
|
||||
doc: mention when O_* defaults to 0
|
||||
* doc/posix-headers/fcntl.texi: Document in more detail which O_*
|
||||
macros default to 0 in Gnulib.
|
||||
|
||||
@@ -2,7 +2,6 @@ Files:
|
||||
tests/test-largefile.c
|
||||
|
||||
Depends-on:
|
||||
assert-h
|
||||
intprops
|
||||
sys_types
|
||||
sys_stat
|
||||
|
||||
@@ -2,7 +2,6 @@ Files:
|
||||
tests/test-year2038.c
|
||||
|
||||
Depends-on:
|
||||
assert-h
|
||||
intprops
|
||||
|
||||
configure.ac:
|
||||
|
||||
+18
-9
@@ -26,17 +26,26 @@
|
||||
#include <sys/stat.h>
|
||||
#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;
|
||||
}
|
||||
|
||||
@@ -28,11 +28,12 @@
|
||||
#include <sys/types.h>
|
||||
#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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user