bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

new module 'mbsrtoc32s'


From: Bruno Haible
Subject: new module 'mbsrtoc32s'
Date: Sat, 04 Jan 2020 16:14:06 +0100
User-agent: KMail/5.1.3 (Linux/4.4.0-170-generic; KDE/5.18.0; x86_64; ; )

The function mbsrtoc32s is like mbsrtowcs, with char32_t instead of wchar_t.

These patches add the module 'mbsrtoc32s', a bit of preparations, and unit
tests.


2020-01-04  Bruno Haible  <address@hidden>

        mbsrtoc32s: Add tests.
        * tests/test-mbsrtoc32s.c: New file, based on tests/test-mbsrtowcs.c.
        * tests/test-mbsrtoc32s-1.sh: New file, based on
        tests/test-mbsrtowcs1.sh.
        * tests/test-mbsrtoc32s-2.sh: New file, based on
        tests/test-mbsrtowcs2.sh.
        * tests/test-mbsrtoc32s-3.sh: New file, based on
        tests/test-mbsrtowcs3.sh.
        * tests/test-mbsrtoc32s-4.sh: New file, based on
        tests/test-mbsrtowcs4.sh.
        * modules/mbsrtoc32s-tests: New file, based on modules/mbsrtowcs-tests.

        mbsrtoc32s: New module.
        * lib/uchar.in.h (mbsrtoc32s): New declaration.
        * lib/mbsrtowcs-impl.h: Parameterize: Use macros FUNC, DCHAR_T,
        INTERNAL_STATE, MBRTOWC.
        * lib/mbsrtowcs.c (FUNC, DCHAR_T, INTERNAL_STATE, MBRTOWC): New macros.
        * lib/mbsrtoc32s.c: New file.
        * lib/mbsrtoc32s-state.c: New file, based on lib/mbsrtowcs-state.c.
        * m4/uchar.m4 (gl_UCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOC32S.
        * modules/uchar (Makefile.am): Substitute GNULIB_MBSRTOC32S.
        * modules/mbsrtoc32s: New file.
        * tests/test-uchar-c++.cc: Test the signature of mbsrtoc32s.
        * doc/posix-functions/mbsrtowcs.texi: Mention the new module.

2020-01-04  Bruno Haible  <address@hidden>

        mbrtowc, mbrtoc32: Tighten dependendies.
        * modules/mbrtowc (Depends-on): Disable hard-locale, mbsinit if
        REPLACE_MBSTATE_T is 1.
        (configure.ac): Don't compile lc-charset-dispatch.c and mbtowc-lock.c if
        REPLACE_MBSTATE_T is 0.
        * modules/mbrtoc32 (Depends-on): Remove hard-locale, mbsinit. Disable
        mbrtowc dependency if REPLACE_MBSTATE_T is 1.
        (configure.ac): Don't compile lc-charset-dispatch.c and mbtowc-lock.c if
        REPLACE_MBSTATE_T is 0.

2020-01-04  Bruno Haible  <address@hidden>

        uchar: Decide about _GL_LARGE_CHAR32_T at configure time.
        * m4/uchar.m4 (gl_UCHAR_H): Set SMALL_WCHAR_T.
        * modules/uchar (Files): Add stdint.m4.
        (Makefile.am): Substitute SMALL_WCHAR_T.
        * lib/uchar.in.h (_GL_LARGE_CHAR32_T): Rely on SMALL_WCHAR_T.

Attachment: 0001-uchar-Decide-about-_GL_LARGE_CHAR32_T-at-configure-t.patch
Description: Text Data

Attachment: 0002-mbrtowc-mbrtoc32-Tighten-dependendies.patch
Description: Text Data

Attachment: 0003-mbsrtoc32s-New-module.patch
Description: Text Data

Attachment: 0004-mbsrtoc32s-Add-tests.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]