From: Bruno Haible Date: Mon, 13 Jul 2026 20:27:16 +0000 (+0200) Subject: vasnprintf-extra-tests: Move new expensive test to here. X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=514a21675ce28d401711cb2df6b4243f618bd8f8;p=thirdparty%2Fgnulib.git vasnprintf-extra-tests: Move new expensive test to here. * tests/test-vasnprintf-big.c (main): Move INT_MAX test case to here. * tests/test-vasnprintf-posix.c (test_function): Revert last change. --- diff --git a/ChangeLog b/ChangeLog index c4843bea64..b476f126fa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2026-07-13 Bruno Haible + + vasnprintf-extra-tests: Move new expensive test to here. + * tests/test-vasnprintf-big.c (main): Move INT_MAX test case to here. + * tests/test-vasnprintf-posix.c (test_function): Revert last change. + 2026-07-13 Bruno Haible vasnprintf: Fix compilation error on FreeBSD, OpenBSD (regr. today). diff --git a/tests/test-vasnprintf-big.c b/tests/test-vasnprintf-big.c index fc11a6e775..a9969e18c7 100644 --- a/tests/test-vasnprintf-big.c +++ b/tests/test-vasnprintf-big.c @@ -44,6 +44,25 @@ int main () { + /* Large width given as argument. */ + { + size_t length; + char *result = + asnprintf (NULL, &length, "%*d", INT_MAX, INT_MIN); + if (!result) + ASSERT (errno == ENOMEM); + else + { + ASSERT (atoi (result) == INT_MIN); + ASSERT (length == INT_MAX); + ASSERT (length == strlen (result)); + free (result); + } + } + + if (test_exit_status != EXIT_SUCCESS) + return test_exit_status; + #if PTRDIFF_MAX == INT_MAX fputs ("Skipping test: ptrdiff_t is not 64-bits wide\n", stderr); return 77; diff --git a/tests/test-vasnprintf-posix.c b/tests/test-vasnprintf-posix.c index 98e3319920..fe0a59d647 100644 --- a/tests/test-vasnprintf-posix.c +++ b/tests/test-vasnprintf-posix.c @@ -22,7 +22,6 @@ #include #include -#include #include #include #include @@ -168,25 +167,6 @@ test_function (char * (*my_asnprintf) (char *, size_t *, const char *, ...)) free (result); } - { - char *expensive = getenv ("RUN_EXPENSIVE_TESTS"); - if (expensive && streq (expensive, "yes")) - { /* Large width given as argument. */ - size_t length; - char *result = - my_asnprintf (NULL, &length, "%*d", INT_MAX, INT_MIN); - if (!result) - ASSERT (errno == ENOMEM); - else - { - ASSERT (atoi (result) == INT_MIN); - ASSERT (length == INT_MAX); - ASSERT (length == strlen (result)); - free (result); - } - } - } - /* Test the support of the 'a' and 'A' conversion specifier for hexadecimal output of floating-point numbers. */