Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/newlib
AgeCommit message (Collapse)Author
2016-08-23Implement missing POSIX-1.2008 function strerror_lCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-23Add missing declarations of str{n}casecmp_l to strings.h.Corinna Vinschen
Per glibc, both funcs are defined as GNU visible in strings.h. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-23Fix stray closing braceCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-23Add/change a few #ifdef comments in locale code for clearnessCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-23Remove erroneous POSIX guards for reentrant locale functionsCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-23Reference __global_locale only via __get_global_locale.Corinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-21Remove extern declaration of __locale_cjk_lang in string/local.hCorinna Vinschen
Now that __locale_cjk_lang is an inline function in setlocale.h and setlocale.h is included, the declaration doesn't make sense. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-20Implement missing POSIX function nl_langinfo_lCorinna Vinschen
Change nl_langinfo to nl_langinfo_l using locale given as argument. Remove outdated TRANSITION_PERIOD_HACK. The codeset is stored in the locale for quite some time now. For !MB_CAPABLE targets, just return "US_ASCII" as codeset. Implement nl_langinfo by calling nl_langinfo_l. Export nl_langinfo_l from Cygwin DLL and bump minor API version number. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-20Introduce __current_locale_charset/__locale_charsetCorinna Vinschen
The former __locale_charset always fetched the current locale's charset. We need the per-locale charset, too, in future. Rename __locale_charset to __current_locale_charset and change __locale_charset to take a locale_t as parameter. Accommodate througout. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-19Fix html buildThomas Preud'homme
2016-08-18Revert "Fix __getreent function for Cygwin"Corinna Vinschen
This reverts commit 4de8596. It worked around a problem which was actually introduced by patch 10a30e7 a few weeks ago. Rather than adding special code to the newlib version of __getreent, the followup patch reinstantiates the original, Cygwin-only implementation of __getreent. Signed-off-by: Corinna Vinschen <corinna@vinschen.de> Signed-off-by: Stefan Assmann <sassmann@redhat.com>
2016-08-18Fix __getreent function for CygwinCorinna Vinschen
So far the lib function __getreent always returned _impure_ptr. On Cygwin this is only correct after _impure_ptr got initialized. The inline function in include/cygwin/config.h always returns the right _reent ptr, though. After introducing per-thread locales, the __getreent function is called prior to initialization of _impure_ptr (from dll_crt0_0) to access the locale pointer, which leads to a crash. Fix the __getreent lib function for Cygwin to return the correct _reent pointer all the time. Rename inline function to __inline_getreent and introduce a macro __getreent calling the inline function. Change the lib function __getreent to call __inline_getreent on Cygwin. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-17Fix pdf build failure wrt documentation of is*_l functionsThomas Preudhomme
make pdf on arm-none-eabi targets fails to build after the reorganization in baf0c9fcb56e5cf8f54357bf8d8646b51b236886 to fold is*_l documentation in their is* counterpart. This is due two issues: 1) newlib/libc/ctype/ctype.tex still including the def file for the long versions 2) missing angle brackets in .c files for some of is*_l functions This patch fixes the issues and allows make pdf to succeeds.
2016-08-17Constify __locale_ctype_ptr and __locale_ctype_ptr_lCorinna Vinschen
Remove _MB_CAPABLE-only _CONST in ctype.h Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16Actually return pointers in locale categroy accessor functionsCorinna Vinschen
Commit 6e7ce50 was broken. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16Always fall back to __ctype_ptr__ in isXXX_l functions.Corinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16Avoid "implicit declaration of function ‘strtold_l’" in wcstold.cCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16Use era_info_t and alt_digits_t on _WANT_C99_TIME_FORMATS targets onlyCorinna Vinschen
Using era_info_t and alt_digits_t indiscriminately in strftime and strftime_l breaks targets not wanting C99 time formats. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16Expose locale category accessor functions to non-__HAVE_LOCALE_INFO__ targets.Corinna Vinschen
These functions are used from, e.g., nl_langinfo or strftime, so we need them for all targets. Just return "C" locale category for non-__HAVE_LOCALE_INFO__ targets. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16__localeconv_l: Always define locale variable lconvCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-16Don't use locale_t in internal headerCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Implement strto[dflu]_l/wcsto[dflu]_lCorinna Vinschen
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>
2016-08-15Add documentation for duplocale, freelocale, newlocale, and uselocale.Corinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Fold documentation of is*_l funcs into documentation of non-l is* funcsCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15setlocale/localeconv are *not* POSIX-1.2008Corinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15setlocale.h: Fix current locale handling for !__HAVE_LOCALE_INFO__ targetsCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15__loadlocale: Set missing val when evaluating CP874Corinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Fix multiple thinkos in newlocaleCorinna Vinschen
- Setting the categories strings in tmp_locale short-circuits __loadlocale. Use a new_categories array instead, just as in _setlocale_r. - If we have a base, copy over the *not* defined categories in category_mask in the first place. Rearrange loop accordingly. - Free base right in newlocale. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Fix _REENT_INIT initialization of _localeCorinna Vinschen
Initializing a pointer to struct __locale_t to point to a string "C" is not such a bright idea in the long run... Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Fix typo in isalnum_l docCorinna Vinschen
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Get rid of LCID, reformat type definitions in setlocale.hCorinna Vinschen
Definition of LCID results in build problems on 32 bit Cygwin Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Add sys/_locale.h header and fix up headersCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Rename __get_locale_XXX to __get_XXX_locale to use unified naming schemeCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Move lconv into struct __locale_t and implement __localeconv_lCorinna Vinschen
Based on FreeBSD, just don't export symbol yet, unless required. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Implement per-locale string functionsCorinna Vinschen
strcasecmp_l, strcoll_l, strncasecmp_l, strxfrm_l, wcscasecmp_l, wcscoll_l, wcstrncasecmp_l, wcstrxfrm_l, strftime_l. Add missing CHEWOUT_FILES from previous patch. TODO: strfmon_l. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Implement all per-locale ctype functionsCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Move localeconv, duplocale, freelocale, newlocale, uselocale into separate filesCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15include/locale.h: Fix POSIX guardsCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Remove non-working __part_load_locale function and any related codeCorinna Vinschen
Add TODO markers in case somebody wants to pick this up again Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Fix memory handling in functions called from loadlocaleCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Implement newlocale, freelocale, duplocale, uselocaleCorinna Vinschen
Add global const __C_locale for reference purposes. Bump Cygwin API minor number and DLL major version number to 2.6.0. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Use __get_global_locale function where appropriateCorinna Vinschen
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Rearrange struct __locale_t pointers into an arrayCorinna Vinschen
This allows looping through the structs and buffers. Also rearrange definitions to follow order of LC_xxx values. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Change loadlocale to fill a __locale_t given as parameterCorinna Vinschen
Don't use global variables. This allows to call loadlocale from the yet to be created newlocale(). Rename _thr_locale_t to __locale_t (these locales are not restricted to threads so the name is misleading). Along these lines, fix _set_ctype to take a __locale_t as parameter. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15Consolidate wctomb/mbtowc calls for POSIX-1.2008Corinna Vinschen
- 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>
2016-08-15POSIX-1.2008 per-thread locales, groundwork part 2Corinna Vinschen
Move all locale category structure definitions into setlocale.h and remove other headers in locale subdir. Create inline accessor functions for current category struct pointers and use throughout. Use pointers to "C" locale category structs by default in __global_locale. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-15POSIX-1.2008 per-thread locales, groundwork part 1Corinna Vinschen
Introduce first cut of struct _thr_locale_t used for the locale_t definition. Introduce global instance called __global_locale used by default. Introduce internal inline functions __get_global_locale, __get_locale_r, __get_current_locale. Remove usage of global variables in favor of accessor functions pointing to __global_locale for now. Include all local headers in locale subdir from setlocale.h to get single include for internal locale access. Introduce __CTYPE_PTR macro to replace direct access to __ctype_ptr__ and use throughout in isxxx functions. Signed-off by: Corinna Vinschen <corinna@vinschen.de>
2016-08-12Do not include wctype.h in wchar.h with _GNU_SOURCEYaakov Selkowitz
_GNU_SOURCE generally enables all features, but in this case the POSIX requirement to #include <wctype.h> for these is preferred. Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2016-08-12Define va_list in stdio.h and wchar.hYaakov Selkowitz
This typedef, along with that of FILE in wchar.h, were XSI prior to inclusion in POSIX.1-2008. Fixes: https://sourceware.org/ml/newlib/2016/msg00640.html Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>
2016-08-12Include wctype.h in wchar.h as an XSI extensionYaakov Selkowitz
However, note that this inclusion is obsolescent in SUSv4 and therefore may be removed in the next revision. http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/wchar.h.html Signed-off-by: Yaakov Selkowitz <yselkowi@redhat.com>