diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2004-04-23 21:44:22 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2004-04-23 21:44:22 +0000 |
commit | f777e3a5ac5d2fda9047dc2b7939d3f60bdef609 (patch) | |
tree | a4a669023388c6d657033d6242adf5d306173195 /newlib/libc/stdlib/wctomb.c | |
parent | 27c7566ca4f436cc6184fdaf568dd84ca9c501f1 (diff) | |
download | cygnal-f777e3a5ac5d2fda9047dc2b7939d3f60bdef609.tar.gz cygnal-f777e3a5ac5d2fda9047dc2b7939d3f60bdef609.tar.bz2 cygnal-f777e3a5ac5d2fda9047dc2b7939d3f60bdef609.zip |
2004-04-23 Artem B. Bityuckiy <abitytsky@softminecorp.com>
* configure.in: Define _MB_CAPABLE if mb supported.
* configure: Regenerated.
* configure.host: Remove manual setting of MB_CAPABLE compiler
flag.
* newlib.hin: Add _MB_CAPABLE flag.
* libc/ctype/iswalpha.c, libc/ctype/iswblank.c: Include <newlib.h>
and check for _MB_CAPABLE flag instead of MB_CAPABLE.
* libc/ctype/iswcntrl.c, libc/ctype/iswprint.c: Ditto.
* libc/ctype/iswpunct.c, libc/ctype/iswspace.c: Ditto.
* libc/ctype/jp2uc.c: Ditto.
* libc/ctype/towlower.c, libc/ctype/towupper.c: Ditto.
* libc/locale/locale.c: Ditto
* libc/machine/powerpc/vfscanf.c: Ditto
* libc/stdio/vfprintf.c, libc/stdio/vfscanf.c: Ditto
* libc/stdlib/mblen.c: Ditto
* libc/stdlib/mblen_r.c, libc/stdlib/mbrlen.c: Ditto
* libc/stdlib/mbrtowc.c, libc/stdlib/mbsrtowcs.c: Ditto
* libc/stdlib/mbstowcs.c, libc/stdlib/mbtowc.c: Ditto
* libc/stdlib/mbtowc_r.c, libc/stdlib/wcrtomb.c: Ditto
* libc/stdlib/wcsrtombs.c, libc/stdlib/wcstombs.c: Ditto
* libc/stdlib/wctomb.c, libc/sys/linux/intl/dcigettext.c: Ditto
* libc/sys/linux/intl/explodename.c: Ditto
* libc/sys/linux/intl/finddomain.c: Ditto
* libc/sys/linux/intl/l10nflist.c: Ditto
* libc/sys/linux/intl/loadmsgcat.c: Ditto
* libc/sys/linux/intl/localealias.c: Ditto
Diffstat (limited to 'newlib/libc/stdlib/wctomb.c')
-rw-r--r-- | newlib/libc/stdlib/wctomb.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/newlib/libc/stdlib/wctomb.c b/newlib/libc/stdlib/wctomb.c index 5cff10fff..f2c62496f 100644 --- a/newlib/libc/stdlib/wctomb.c +++ b/newlib/libc/stdlib/wctomb.c @@ -16,24 +16,24 @@ TRAD_SYNOPSIS wchar_t <[wchar]>; DESCRIPTION -When MB_CAPABLE is not defined, this is a minimal ANSI-conforming +When _MB_CAPABLE is not defined, this is a minimal ANSI-conforming implementation of <<wctomb>>. The only ``wide characters'' recognized are single bytes, and they are ``converted'' to themselves. -When MB_CAPABLE is defined, this routine calls <<_wctomb_r>> to perform +When _MB_CAPABLE is defined, this routine calls <<_wctomb_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. Each call to <<wctomb>> modifies <<*<[s]>>> unless <[s]> is a null -pointer or MB_CAPABLE is defined and <[wchar]> is invalid. +pointer or _MB_CAPABLE is defined and <[wchar]> is invalid. RETURNS This implementation of <<wctomb>> returns <<0>> if -<[s]> is <<NULL>>; it returns <<-1>> if MB_CAPABLE is enabled +<[s]> is <<NULL>>; it returns <<-1>> if _MB_CAPABLE is enabled and the wchar is not a valid multi-byte character, it returns <<1>> -if MB_CAPABLE is not defined or the wchar is in reality a single +if _MB_CAPABLE is not defined or the wchar is in reality a single byte character, otherwise it returns the number of bytes in the multi-byte character. @@ -46,6 +46,7 @@ effects vary with the locale. #ifndef _REENT_ONLY +#include <newlib.h> #include <stdlib.h> int @@ -53,17 +54,17 @@ _DEFUN (wctomb, (s, wchar), char *s _AND wchar_t wchar) { -#ifdef MB_CAPABLE +#ifdef _MB_CAPABLE _REENT_CHECK_MISC(_REENT); return _wctomb_r (_REENT, s, wchar, &(_REENT_WCTOMB_STATE(_REENT))); -#else /* not MB_CAPABLE */ +#else /* not _MB_CAPABLE */ if (s == NULL) return 0; *s = (char) wchar; return 1; -#endif /* not MB_CAPABLE */ +#endif /* not _MB_CAPABLE */ } #endif /* !_REENT_ONLY */ |