diff --git a/contrib/sdk/sources/newlib/libc/Tupfile.lua b/contrib/sdk/sources/newlib/libc/Tupfile.lua index f91d56c96a..a215f40ebe 100644 --- a/contrib/sdk/sources/newlib/libc/Tupfile.lua +++ b/contrib/sdk/sources/newlib/libc/Tupfile.lua @@ -385,7 +385,6 @@ STDIO_SRCS = { "iprintf.c", "iscanf.c", "makebuf.c", - "mbstowcs.c", "mktemp.c", "open_memstream.c", "perror.c", diff --git a/contrib/sdk/sources/newlib/libc/stdio/mbstowcs.c b/contrib/sdk/sources/newlib/libc/stdio/mbstowcs.c deleted file mode 100644 index 09543451cf..0000000000 --- a/contrib/sdk/sources/newlib/libc/stdio/mbstowcs.c +++ /dev/null @@ -1,83 +0,0 @@ -/* -FUNCTION -<>---minimal multibyte string to wide char converter - -INDEX - mbstowcs - -ANSI_SYNOPSIS - #include - int mbstowcs(wchar_t *restrict <[pwc]>, const char *restrict <[s]>, size_t <[n]>); - -TRAD_SYNOPSIS - #include - int mbstowcs(<[pwc]>, <[s]>, <[n]>) - wchar_t *<[pwc]>; - const char *<[s]>; - size_t <[n]>; - -DESCRIPTION -When _MB_CAPABLE is not defined, this is a minimal ANSI-conforming -implementation of <>. In this case, the -only ``multi-byte character sequences'' recognized are single bytes, -and they are ``converted'' to wide-char versions simply by byte -extension. - -When _MB_CAPABLE is defined, this routine calls <<_mbstowcs_r>> to perform -the conversion, passing a state variable to allow state dependent -decoding. The result is based on the locale setting which may -be restricted to a defined set of locales. - -RETURNS -This implementation of <> returns <<0>> if -<[s]> is <> or is the empty string; -it returns <<-1>> if _MB_CAPABLE and one of the -multi-byte characters is invalid or incomplete; -otherwise it returns the minimum of: <> or the -number of multi-byte characters in <> plus 1 (to -compensate for the nul character). -If the return value is -1, the state of the <> string is -indeterminate. If the input has a length of 0, the output -string will be modified to contain a wchar_t nul terminator. - -PORTABILITY -<> is required in the ANSI C standard. However, the precise -effects vary with the locale. - -<> requires no supporting OS subroutines. -*/ - -#ifndef _REENT_ONLY - -#include -#include -#include - -size_t -_DEFUN (mbstowcs, (pwcs, s, n), - wchar_t *__restrict pwcs _AND - const char *__restrict s _AND - size_t n) -{ -#ifdef _MB_CAPABLE - mbstate_t state; - state.__count = 0; - - return _mbstowcs_r (_REENT, pwcs, s, n, &state); -#else /* not _MB_CAPABLE */ - - int count = 0; - - if (n != 0) { - do { - if ((*pwcs++ = (wchar_t) *s++) == 0) - break; - count++; - } while (--n != 0); - } - - return count; -#endif /* not _MB_CAPABLE */ -} - -#endif /* !_REENT_ONLY */