libc/wchar: Add mbsinit() - scc - simple c99 compiler
 (HTM) git clone git://git.simple-cc.org/scc
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Submodules
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 3eedc954682df1ec5b47667cc27a9ab69642e7b1
 (DIR) parent 21df8da7aed52515d5149538a9a1c5d622e4a166
 (HTM) Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
       Date:   Wed, 26 Feb 2025 10:14:10 +0100
       
       libc/wchar: Add mbsinit()
       
       As we only support utf8 for multibyte streams the
       implementation of mbsinit() is trivial because utf8
       is stateless.
       
       Diffstat:
         M src/libc/objs/common-objs.mk        |       1 +
         M src/libc/wchar/Makefile             |       1 +
         A src/libc/wchar/mbsinit.c            |      11 +++++++++++
       
       3 files changed, 13 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/src/libc/objs/common-objs.mk b/src/libc/objs/common-objs.mk
       @@ -123,6 +123,7 @@ COMMON_OBJS =\
                wchar/fputwc.$O\
                wchar/mbrlen.$O\
                wchar/mbrtowc.$O\
       +        wchar/mbsinit.$O\
                wchar/mbsrtowcs.$O\
                wchar/wcrtomb.$O\
                wchar/wcslen.$O\
 (DIR) diff --git a/src/libc/wchar/Makefile b/src/libc/wchar/Makefile
       @@ -7,6 +7,7 @@ OBJS =\
                fputwc.$O\
                mbrlen.$O\
                mbrtowc.$O\
       +        mbsinit.$O\
                mbsrtowcs.$O\
                wcrtomb.$O\
                wcslen.$O\
 (DIR) diff --git a/src/libc/wchar/mbsinit.c b/src/libc/wchar/mbsinit.c
       @@ -0,0 +1,11 @@
       +#include <wchar.h>
       +
       +#undef mbsinit
       +
       +int
       +mbsinit(const mbstate_t *ps)
       +{
       +        if (!ps)
       +                return 1;
       +        return *ps == 0;
       +}