scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | Submodules | README | LICENSE

commit 3eedc954682df1ec5b47667cc27a9ab69642e7b1
parent 21df8da7aed52515d5149538a9a1c5d622e4a166
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:
Msrc/libc/objs/common-objs.mk | 1+
Msrc/libc/wchar/Makefile | 1+
Asrc/libc/wchar/mbsinit.c | 11+++++++++++
3 files changed, 13 insertions(+), 0 deletions(-)

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\ 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\ 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; +}