| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
| |
Implement GNU extensions strtod_l, strtof_l, strtol_l, strtold_l, strtoll_l,
strtoul_l, strtoull_l, wcstod_l, wcstof_l, wcstol_l, wcstold_l, wcstoll_l,
wcstoul_l, wcstoull_l.
Export from Cygwin, fix posix.xml.
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove charset parameter from low level __foo_wctomb/__foo_mbtowc calls.
- Instead, create array of function for ISO and Windows codepages to point
to function which does not require to evaluate the charset string on
each call. Create matching helper functions. I.e., __iso_wctomb,
__iso_mbtowc, __cp_wctomb and __cp_mbtowc are functions returning the
right function pointer now.
- Create __WCTOMB/__MBTOWC macros utilizing per-reent locale and replace
calls to __wctomb/__mbtowc with calls to __WCTOMB/__MBTOWC.
- Drop global __wctomb/__mbtowc vars.
- Utilize aforementioned changes in Cygwin to get rid of charset in other,
calling functions and simplify the code.
- In Cygwin restrict global cygheap locale info to the job performed
by internal_setlocale. Use UTF-8 instead of ASCII on the fly in
internal conversion functions.
- In Cygwin dll_entry, make sure to initialize a TLS area with a NULL
_REENT->_locale pointer. Add comment to explain why.
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
|
|
|
|
|
|
|
|
|
| |
2015-06-23 Jon Turney <jon.turney@dronecode.org.uk>
* libc/stdlib/itoa.c: Fix makedoc markup.
* libc/stdlib/wcsnrtombs.c: Ditto.
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*libc/include/wchar.h: Add restrict keyword.
*libc/stdio/fgetws.c (fgetws): ditto.
*libc/stdio/fputws.c (fputws): ditto.
*libc/stdio/fwprintf.c (fwprintf): ditto.
*libc/stdio/fwscanf.c (fwscanf): ditto.
*libc/stdio/swprintf.c (swprintf): ditto.
*libc/stdio/swscanf.c (swscanf): ditto.
*libc/stdio/vfwprintf.c (vfwprintf): ditto.
*libc/stdio/vfwscanf.c (vfwscanf): ditto.
*libc/stdio/vswprintf.c (vswprintf): ditto.
*libc/stdio/vswscanf.c (vswscanf): ditto.
*libc/stdio/vwprintf.c (vwprintf): ditto.
*libc/stdio/vwscanf.c (vwscanf): ditto.
*libc/stdio/wprintf.c (wprintf): ditto.
*libc/stdio/wscanf.c (wscanf): ditto.
*libc/stdlib/mbrlen.c (mbrlen): ditto.
*libc/stdlib/mbrtowc.c (mbrtowc): ditto.
*libc/stdlib/mbsnrtowcs.c (mbsnrtowcs): ditto.
*libc/stdlib/mbsrtowcs.c (mbsrtowcs): ditto.
*libc/stdlib/wcrtomb.c (wcrtomb): ditto.
*libc/stdlib/wcsnrtombs.c (wcsnrtombs): ditto.
*libc/stdlib/wcsrtombs.c (wcsrtombs): ditto.
*libc/stdlib/wcstod.c (wcstod): ditto.
*libc/stdlib/wcstol.c (wcstol): ditto.
*libc/stdlib/wcstold.c (wcstold): ditto.
*libc/stdlib/wcstoll.c (wcstoll): ditto.
*libc/stdlib/wcstoul.c (wcstoul): ditto.
*libc/stdlib/wcstoull.c (cstoull): ditto.
*libc/string/wcpcpy.c (wcpcpy): ditto.
*libc/string/wcpncpy.c (wcpncpy): ditto.
*libc/string/wcscat.c (wcscat): ditto.
*libc/string/wcscpy.c (wcscpy): ditto.
*libc/string/wcsncat.c (wcsncat): ditto.
*libc/string/wcsncpy.c (wcsncpy): ditto.
*libc/string/wcsstr.c (wcsstr): ditto.
*libc/string/wcstok.c (wcstok): ditto.
*libc/string/wcsxfrm.c (wcsxfrm): ditto.
*libc/string/wmemcpy.c (wmemcpy): ditto.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
_mbtowc_r with direct call to __mbtowc.
* libc/stdio/vfscanf.c: Ditto.
* libc/stdlib/btowc.c: Include local.h. Replace call to _mbtowc_r
with direct call to __mbtowc.
* libc/stdlib/mblen.c: Ditto.
* libc/stdlib/mblen_r.c: Ditto.
* libc/stdlib/mbrtowc.c: Ditto.
* libc/stdlib/mbstowcs_r.c: Ditto.
* libc/stdlib/mbtowc.c: Ditto.
* libc/stdlib/wcrtomb.c: Include local.h. Replace call to _wctomb_r
with direct call to __wctomb.
* libc/stdlib/wcsnrtombs.c: Ditto.
(_wcsnrtombs_r): Ditto.
* libc/stdlib/wcstombs_r.c: Ditto.
* libc/stdlib/wctob.c: Ditto.
* libc/stdlib/wctomb.c: Ditto.
* libc/stdlib/mbrtowc.c (mbrtowc): Implement independently from
_mbrtowc_r, unless PREFER_SIZE_OVER_SPEED or __OPTIMIZE_SIZE__ are
defined.
* libc/stdlib/wcrtomb.c (wcrtomb): Implement independently from
_wcrtomb_r, unless PREFER_SIZE_OVER_SPEED or __OPTIMIZE_SIZE__ are
defined.
* libc/stdlib/mbtowc_r.c (__utf8_mbtowc): Drop unnecessary test for
ch >= 0.
|
|
(_mbsnrtowcs_r): Declare.
(wcsnrtombs): Declare.
(_wcsnrtombs_r): Declare.
* libc/stdlib/Makefile.am (ELIX_2_SOURCES): Add mbsnrtowcs.c
and wcsnrtombs.c.
* libc/stdlib/Makefile.in: Regenerate.
* libc/stdlib/mbsnrtowcs.c: New file, implementing _mbsnrtowcs_r
and mbsnrtowcs. Document mbsnrtowcs and mbsrtowcs.
* libc/stdlib/mbsrtowcs.c (_mbsrtowcs_r): Just call _mbsnrtowcs_r.
(mbsrtowcs): Ditto.
* libc/stdlib/wcsnrtombs.c: New file, implementing _wcsnrtombs_r
and wcsnrtombs. Document wcsrtombs and wcsnrtombs.
* libc/stdlib/wcsrtombs.c (_wcsrtombs_r): Just call _wcsnrtombs_r.
(wcsrtombs): Ditto.
* libc/stdlib/stdlib.tex: Accommodate new documentation.
|