1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-09-01 02:34:55 +00:00

10 Commits

Author SHA1 Message Date
Bruno Haible 8947cd3972 tests: Use strnul.
* tests/test-dfa-match-aux.c (main): Use strnul.
* tests/test-pthread-rwlock-waitqueue.c (reader_func, writer_func):
Likewise.
* tests/test-strtold.h (test_function): Likewise.
* tests/test-xstrtold.c (main): Likewise.
* modules/dfa-tests (Depends-on): Add strnul.
* modules/pthread-rwlock-extra-tests (Depends-on): Likewise.
* modules/c-strtold-tests (Depends-on): Likewise.
* modules/strtold-tests (Depends-on): Likewise.
* modules/xstrtold-tests (Depends-on): Likewise.
2026-03-01 14:44:32 +01:00
Bruno Haible 7aa8d8cd87 signbit-no-c++: New module.
* modules/signbit-no-c++: New file, based on modules/signbit.
* modules/signbit: Essentially an alias of signbit-no-c++ now.
* modules/signbit-no-c++-tests: Renamed from modules/signbit-tests.
* lib/math.in.h (signbit): Test also GNULIB_SIGNBIT_NO_CXX.
* m4/math_h.m4 (gl_MATH_H_REQUIRE_DEFAULTS): Initialize
GNULIB_SIGNBIT_NO_CXX.
* modules/math-h (Makefile.am): Substitute GNULIB_SIGNBIT_NO_CXX.
* modules/copysign (Depends-on): Add signbit-no-c++. Remove signbit.
* modules/copysignf (Depends-on): Likewise.
* modules/copysignl (Depends-on): Likewise.
* modules/fabsl (Depends-on): Likewise.
* modules/fmod (Depends-on): Likewise.
* modules/fmodl (Depends-on): Likewise.
* modules/mixin/printf-posix (Depends-on): Likewise.
* modules/remainder (Depends-on): Likewise.
* modules/remainderf (Depends-on): Likewise.
* modules/remainderl (Depends-on): Likewise.
* modules/signed-nan (Depends-on): Likewise.
* modules/totalorder (Depends-on): Likewise.
* modules/totalorderf (Depends-on): Likewise.
* modules/totalorderl (Depends-on): Likewise.
* modules/totalordermag (Depends-on): Likewise.
* modules/totalordermagf (Depends-on): Likewise.
* modules/totalordermagl (Depends-on): Likewise.
* modules/c-strtod-tests (Depends-on): Likewise.
* modules/c-strtof-tests (Depends-on): Likewise.
* modules/c-strtold-tests (Depends-on): Likewise.
* modules/cbrt-ieee-tests (Depends-on): Likewise.
* modules/cbrtf-ieee-tests (Depends-on): Likewise.
* modules/cbrtl-ieee-tests (Depends-on): Likewise.
* modules/ceil-ieee-tests (Depends-on): Likewise.
* modules/ceilf-ieee-tests (Depends-on): Likewise.
* modules/ceill-ieee-tests (Depends-on): Likewise.
* modules/exp-ieee-tests (Depends-on): Likewise.
* modules/exp2-ieee-tests (Depends-on): Likewise.
* modules/exp2f-ieee-tests (Depends-on): Likewise.
* modules/exp2l-ieee-tests (Depends-on): Likewise.
* modules/expf-ieee-tests (Depends-on): Likewise.
* modules/expl-ieee-tests (Depends-on): Likewise.
* modules/expm1-ieee-tests (Depends-on): Likewise.
* modules/expm1f-ieee-tests (Depends-on): Likewise.
* modules/expm1l-ieee-tests (Depends-on): Likewise.
* modules/fabs-ieee-tests (Depends-on): Likewise.
* modules/fabs-tests (Depends-on): Likewise.
* modules/fabsf-ieee-tests (Depends-on): Likewise.
* modules/fabsf-tests (Depends-on): Likewise.
* modules/fabsl-ieee-tests (Depends-on): Likewise.
* modules/fabsl-tests (Depends-on): Likewise.
* modules/floor-ieee-tests (Depends-on): Likewise.
* modules/floorf-ieee-tests (Depends-on): Likewise.
* modules/floorl-ieee-tests (Depends-on): Likewise.
* modules/fmod-ieee-tests (Depends-on): Likewise.
* modules/fmodf-ieee-tests (Depends-on): Likewise.
* modules/fmodl-ieee-tests (Depends-on): Likewise.
* modules/frexp-ieee-tests (Depends-on): Likewise.
* modules/frexp-nolibm-tests (Depends-on): Likewise.
* modules/frexp-tests (Depends-on): Likewise.
* modules/frexpf-ieee-tests (Depends-on): Likewise.
* modules/frexpf-tests (Depends-on): Likewise.
* modules/frexpl-ieee-tests (Depends-on): Likewise.
* modules/frexpl-nolibm-tests (Depends-on): Likewise.
* modules/frexpl-tests (Depends-on): Likewise.
* modules/hypot-ieee-tests (Depends-on): Likewise.
* modules/hypotf-ieee-tests (Depends-on): Likewise.
* modules/hypotl-ieee-tests (Depends-on): Likewise.
* modules/ldexp-ieee-tests (Depends-on): Likewise.
* modules/ldexp-tests (Depends-on): Likewise.
* modules/ldexpf-ieee-tests (Depends-on): Likewise.
* modules/ldexpf-tests (Depends-on): Likewise.
* modules/ldexpl-ieee-tests (Depends-on): Likewise.
* modules/ldexpl-tests (Depends-on): Likewise.
* modules/log-ieee-tests (Depends-on): Likewise.
* modules/log10-ieee-tests (Depends-on): Likewise.
* modules/log10f-ieee-tests (Depends-on): Likewise.
* modules/log10l-ieee-tests (Depends-on): Likewise.
* modules/log1p-ieee-tests (Depends-on): Likewise.
* modules/log1pf-ieee-tests (Depends-on): Likewise.
* modules/log1pl-ieee-tests (Depends-on): Likewise.
* modules/log2-ieee-tests (Depends-on): Likewise.
* modules/log2f-ieee-tests (Depends-on): Likewise.
* modules/log2l-ieee-tests (Depends-on): Likewise.
* modules/logb-ieee-tests (Depends-on): Likewise.
* modules/logbf-ieee-tests (Depends-on): Likewise.
* modules/logbl-ieee-tests (Depends-on): Likewise.
* modules/logf-ieee-tests (Depends-on): Likewise.
* modules/logl-ieee-tests (Depends-on): Likewise.
* modules/modf-ieee-tests (Depends-on): Likewise.
* modules/modff-ieee-tests (Depends-on): Likewise.
* modules/modfl-ieee-tests (Depends-on): Likewise.
* modules/remainder-ieee-tests (Depends-on): Likewise.
* modules/remainderf-ieee-tests (Depends-on): Likewise.
* modules/remainderl-ieee-tests (Depends-on): Likewise.
* modules/rint-ieee-tests (Depends-on): Likewise.
* modules/rintf-ieee-tests (Depends-on): Likewise.
* modules/rintl-ieee-tests (Depends-on): Likewise.
* modules/round-ieee-tests (Depends-on): Likewise.
* modules/roundf-ieee-tests (Depends-on): Likewise.
* modules/roundl-ieee-tests (Depends-on): Likewise.
* modules/sqrt-ieee-tests (Depends-on): Likewise.
* modules/sqrtf-ieee-tests (Depends-on): Likewise.
* modules/sqrtl-ieee-tests (Depends-on): Likewise.
* modules/strtod-tests (Depends-on): Likewise.
* modules/strtof-tests (Depends-on): Likewise.
* modules/strtold-tests (Depends-on): Likewise.
* modules/trunc-ieee-tests (Depends-on): Likewise.
* modules/truncf-ieee-tests (Depends-on): Likewise.
* modules/truncl-ieee-tests (Depends-on): Likewise.
* modules/xstrtod-tests (Depends-on): Likewise.
* modules/xstrtold-tests (Depends-on): Likewise.
2025-12-20 00:02:55 +01:00
Bruno Haible 3d1b90b454 Rename module float to float-h.
* modules/float-h: Renamed from modules/float.
* modules/float-h-tests: Renamed from modules/float-tests.
* modules/float-h-c++-tests: Renamed from modules/float-c++-tests.
* tests/test-float-h.c: Renamed from tests/test-float.c.
* tests/test-float-h-c++.cc: Renamed from tests/test-float-c++.cc.
* tests/test-float-h-c++2.cc: Renamed from tests/test-float-c++2.cc.
* doc/posix-headers/float.texi: Update.
* modules/* (Depends-on): Update.
* modules/float: New file.
2024-12-27 23:14:08 +01:00
Bruno Haible c15fb7730c c-strtold: Add tests.
* tests/test-strtold.h: New file, extracted from tests/test-strtold.c.
* tests/test-strtold.c: Include test-strtold.h.
(FABSL): Remove unused macro.
(main): Just invoke test_function.
* tests/test-strtold1.c: Add comment.
* modules/strtold-tests (Files): Add tests/test-strtold.h.
* tests/test-c-strtold.c: New file, based on tests/test-strtold.c.
* tests/test-c-strtold1.c: New file, based on tests/test-strtold1.c.
* tests/test-c-strtold1.sh: New file, based on tests/test-strtold1.sh.
* modules/c-strtold-tests: New file, based on modules/strtold-tests.
2024-03-05 12:21:36 +01:00
Bruno Haible c78e0437cc strtod, strtold tests: Avoid a test failure on native Windows.
* modules/strtod-tests (Depends-on): Add setlocale.
* modules/strtold-tests (Depends-on): Likewise.
2024-02-22 00:47:40 +01:00
Bruno Haible 65a73162a5 Make internationalization tests stricter on musl systems.
* m4/locale-fr.m4 (gt_LOCALE_FR): On musl systems, set LOCALE_FR_UTF8 to
"fr_FR.UTF-8" instead of "none". Set and substitute
LC_COLLATE_IMPLEMENTED, LC_NUMERIC_IMPLEMENTED, LC_TIME_IMPLEMENTED,
LC_MONETARY_IMPLEMENTED.
* m4/iswdigit.m4 (gl_FUNC_ISWDIGIT): Skip testing a certain locale if
that locale is "none".
* m4/iswxdigit.m4 (gl_FUNC_ISWXDIGIT): Likewise.
* m4/mbrlen.m4 (gl_MBRLEN_RETVAL): Likewise.
* m4/mbrtowc.m4 (gl_MBRTOWC_RETVAL): Likewise.
* m4/mbrtoc32.m4 (gl_MBRTOC32_SANITYCHECK): Likewise.
* m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
* m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise.
--
* tests/test-c32isalpha.c (main): On musl libc, disable tests that fail.
* tests/test-c32iscntrl.c (main): Likewise.
* tests/test-c32isgraph.c (main): Likewise.
* tests/test-c32islower.c (main): Likewise.
* tests/test-c32isprint.c (main): Likewise.
* tests/test-c32toupper.c (main): Likewise.
* tests/test-nl_langinfo1.c (main): Likewise.
* tests/test-nl_langinfo2.c (main): Likewise.
* modules/c32isalpha-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
* modules/c32iscntrl-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
* modules/c32isgraph-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
* modules/c32islower-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
* modules/c32isprint-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
* modules/c32toupper-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
* modules/nl_langinfo-tests (Files): Add musl.m4.
(configure.ac): Invoke gl_MUSL_LIBC.
--
* tests/test-strtod1.sh: Skip the test if LC_NUMERIC_IMPLEMENTED is
false.
* tests/test-strtold1.sh: Likewise.
* tests/test-vasnprintf-posix2.sh: Likewise.
* tests/test-vasnwprintf-posix2.sh: Likewise.
* modules/strtod-tests (Makefile.am): Set LC_NUMERIC_IMPLEMENTED in the
tests environment.
* modules/strtold-tests (Makefile.am): Likewise.
* modules/vasnprintf-posix-tests (Makefile.am): Likewise.
* modules/vasnwprintf-posix-tests (Makefile.am): Likewise.
2023-06-14 01:30:47 +02:00
Bruno Haible bd50da7f20 setlocale: Rename LIB_SETLOCALE to SETLOCALE_LIB.
* m4/setlocale.m4: Rename LIB_SETLOCALE to SETLOCALE_LIB.
All uses changed.
* NEWS: Mention the change.
2023-01-07 18:06:52 +01:00
Bruno Haible 505092c2fd setlocale: Make calls with NULL argument multithread-safe.
* lib/setlocale.c: Include <errno.h>.
(setlocale_mtsafe): New function.
(setlocale_unixlike): Invoke setlocale_mtsafe instead of setlocale.
(setlocale_improved): Renamed from rpl_setlocale.
* m4/setlocale.m4 (gl_FUNC_SETLOCALE): Require gl_FUNC_SETLOCALE_NULL.
Set and define NEED_SETLOCALE_IMPROVED and NEED_SETLOCALE_MTSAFE. Set
LIB_SETLOCALE.
* modules/setlocale (Depends-on): Add setlocale-null. Update conditions.
(Link): New section.
* tests/locale.c: Undefine setlocale.
* tests/test-setlocale_null-one.c: Likewise.
* tests/test-setlocale_null-all.c: Likewise.
* modules/setlocale-tests (Makefile.am): Link the test programs with
$(LIB_SETLOCALE).
* modules/astrxfrm-tests (Makefile.am): Likewise.
* modules/btowc-tests (Makefile.am): Likewise.
* modules/c-ctype-tests (Makefile.am): Likewise.
* modules/c-snprintf-tests (Makefile.am): Likewise.
* modules/c-strcase-tests (Makefile.am): Likewise.
* modules/c-vasprintf-tests (Makefile.am): Likewise.
* modules/c-vsnprintf-tests (Makefile.am): Likewise.
* modules/c-xvasprintf-tests (Makefile.am): Likewise.
* modules/dfa-tests (Makefile.am): Likewise.
* modules/duplocale-tests (Makefile.am): Likewise.
* modules/hard-locale-tests (Makefile.am): Likewise.
* modules/localcharset-tests (Makefile.am): Likewise.
* modules/localename-tests (Makefile.am): Likewise.
* modules/mbmemcasecmp-tests (Makefile.am): Likewise.
* modules/mbmemcasecoll-tests (Makefile.am): Likewise.
* modules/mbrtowc-tests (Makefile.am): Likewise.
* modules/mbscasecmp-tests (Makefile.am): Likewise.
* modules/mbscasestr-tests (Makefile.am): Likewise.
* modules/mbschr-tests (Makefile.am): Likewise.
* modules/mbscspn-tests (Makefile.am): Likewise.
* modules/mbsinit-tests (Makefile.am): Likewise.
* modules/mbsncasecmp-tests (Makefile.am): Likewise.
* modules/mbsnrtowcs-tests (Makefile.am): Likewise.
* modules/mbspbrk-tests (Makefile.am): Likewise.
* modules/mbspcasecmp-tests (Makefile.am): Likewise.
* modules/mbsrchr-tests (Makefile.am): Likewise.
* modules/mbsrtowcs-tests (Makefile.am): Likewise.
* modules/mbsspn-tests (Makefile.am): Likewise.
* modules/mbsstr-tests (Makefile.am): Likewise.
* modules/nl_langinfo-tests (Makefile.am): Likewise.
* modules/quotearg-tests (Makefile.am): Likewise.
* modules/regex-tests (Makefile.am): Likewise.
* modules/strfmon_l-tests (Makefile.am): Likewise.
* modules/strtod-tests (Makefile.am): Likewise.
* modules/strtold-tests (Makefile.am): Likewise.
* modules/unicase/locale-language-tests (Makefile.am): Likewise.
* modules/unicase/ulc-casecmp-tests (Makefile.am): Likewise.
* modules/unicase/ulc-casecoll-tests (Makefile.am): Likewise.
* modules/unigbrk/ulc-grapheme-breaks-tests (Makefile.am): Likewise.
* modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
* modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
* modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
* modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
* modules/uniwbrk/ulc-wordbreaks-tests (Makefile.am): Likewise.
* modules/vasnprintf-posix-tests (Makefile.am): Likewise.
* modules/wcrtomb-tests (Makefile.am): Likewise.
* modules/wcsnrtombs-tests (Makefile.am): Likewise.
* modules/wcsrtombs-tests (Makefile.am): Likewise.
* modules/wcwidth-tests (Makefile.am): Likewise.
* doc/posix-functions/setlocale.texi: Mention that the multithread-
safety fix is also available in module 'setlocale'.
2019-12-18 14:35:27 +01:00
Bruno Haible 97e23d40a6 strtod, strtold: Use the locale's decimal point.
* lib/strtod.c: Include <locale.h>, <stdio.h>, <langinfo.h>.
(decimal_point_char): New function, copied from lib/vasnprintf.c.
(parse_number): Add a radixchar argument. Use it instead of '.'.
(STRTOD): Invoke decimal_point_char and pass the result to parse_number.
* m4/strtod.m4 (gl_PREREQ_STRTOD): Test whether nl_langinfo exists.
* m4/strtold.m4 (gl_PREREQ_STRTOLD): Likewise.
* tests/test-strtod1.c: New file.
* tests/test-strtod1.sh: New file.
* modules/strtod-tests (Files): Add test-strtod1.{sh,c}. Add
locale-fr.m4 and its dependencies.
(configure.ac): Invoke gt_LOCALE_FR, gt_LOCALE_FR_UTF8.
(Makefile.am): Arrange to compile test-strtod1.c and run
test-strtod1.sh.
* tests/test-strtold1.c: New file.
* tests/test-strtold1.sh: New file.
* modules/strtold-tests (Files): Add test-strtold1.{sh,c}. Add
locale-fr.m4 and its dependencies.
(configure.ac): Invoke gt_LOCALE_FR, gt_LOCALE_FR_UTF8.
(Makefile.am): Arrange to compile test-strtold1.c and run
test-strtold1.sh.
2019-02-01 03:12:28 +01:00
Bruno Haible c39d926ef7 strtold: Add tests.
* tests/test-strtold.c: New file, based on tests/test-strtod.c.
* modules/strtold-tests: New file.
2019-01-30 03:53:43 +01:00