diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2016-07-24 16:44:43 +0300 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2016-08-15 11:56:57 +0300 |
commit | 8493c1631643fada62384768408852bc0fa6ff44 (patch) | |
tree | 13b9f7c7e686ec3939137699be29d5863b8382eb /winsup | |
parent | 956565be706c71902f79c06181d09fd1fb04f2ac (diff) |
Implement all per-locale ctype functions
Signed-off by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'winsup')
-rw-r--r-- | winsup/cygwin/common.din | 35 | ||||
-rw-r--r-- | winsup/cygwin/ctype.cc | 1 | ||||
-rw-r--r-- | winsup/cygwin/include/cygwin/version.h | 8 | ||||
-rw-r--r-- | winsup/doc/posix.xml | 67 |
4 files changed, 77 insertions, 34 deletions
diff --git a/winsup/cygwin/common.din b/winsup/cygwin/common.din index 0660a38e7..7d80c3d97 100644 --- a/winsup/cygwin/common.din +++ b/winsup/cygwin/common.din @@ -69,6 +69,7 @@ __isinff = isinff NOSIGFE __isnand = isnan NOSIGFE __isnanf = isnanf NOSIGFE __locale_ctype_ptr NOSIGFE +__locale_ctype_ptr_l NOSIGFE __locale_mb_cur_max NOSIGFE __main NOSIGFE __mempcpy = mempcpy NOSIGFE @@ -722,39 +723,65 @@ iprintf SIGFE iruserok SIGFE iruserok_sa SIGFE isalnum NOSIGFE +isalnum_l NOSIGFE isalpha NOSIGFE +isalpha_l NOSIGFE isascii NOSIGFE +isascii_l NOSIGFE isatty SIGFE isblank NOSIGFE +isblank_l NOSIGFE iscntrl NOSIGFE +iscntrl_l NOSIGFE isdigit NOSIGFE +isdigit_l NOSIGFE isgraph NOSIGFE +isgraph_l NOSIGFE isinf NOSIGFE isinff NOSIGFE isinfl NOSIGFE islower NOSIGFE +islower_l NOSIGFE isnan NOSIGFE isnanf NOSIGFE isnanl NOSIGFE isprint NOSIGFE +isprint_l NOSIGFE ispunct NOSIGFE +ispunct_l NOSIGFE issetugid NOSIGFE isspace NOSIGFE +isspace_l NOSIGFE isupper NOSIGFE +isupper_l NOSIGFE iswalnum NOSIGFE +iswalnum_l NOSIGFE iswalpha NOSIGFE +iswalpha_l NOSIGFE iswblank NOSIGFE +iswblank_l NOSIGFE iswcntrl NOSIGFE +iswcntrl_l NOSIGFE iswctype NOSIGFE +iswctype_l NOSIGFE iswdigit NOSIGFE +iswdigit_l NOSIGFE iswgraph NOSIGFE +iswgraph_l NOSIGFE iswlower NOSIGFE +iswlower_l NOSIGFE iswprint NOSIGFE +iswprint_l NOSIGFE iswpunct NOSIGFE +iswpunct_l NOSIGFE iswspace NOSIGFE +iswspace_l NOSIGFE iswupper NOSIGFE +iswupper_l NOSIGFE iswxdigit NOSIGFE +iswxdigit_l NOSIGFE isxdigit NOSIGFE +isxdigit_l NOSIGFE j0 NOSIGFE j0f NOSIGFE j1 NOSIGFE @@ -1393,11 +1420,17 @@ timezone SIGFE tmpfile SIGFE tmpnam SIGFE toascii NOSIGFE +toascii_l NOSIGFE tolower NOSIGFE +tolower_l NOSIGFE toupper NOSIGFE +toupper_l NOSIGFE towctrans NOSIGFE +towctrans_l NOSIGFE towlower NOSIGFE +towlower_l NOSIGFE towupper NOSIGFE +towupper_l NOSIGFE trunc NOSIGFE truncate SIGFE truncf NOSIGFE @@ -1500,7 +1533,9 @@ wcsxfrm NOSIGFE wctob NOSIGFE wctomb NOSIGFE wctrans NOSIGFE +wctrans_l NOSIGFE wctype NOSIGFE +wctype_l NOSIGFE wcwidth NOSIGFE wmemchr NOSIGFE wmemcmp NOSIGFE diff --git a/winsup/cygwin/ctype.cc b/winsup/cygwin/ctype.cc index a7dc18a5d..3eb6b34b7 100644 --- a/winsup/cygwin/ctype.cc +++ b/winsup/cygwin/ctype.cc @@ -5,6 +5,7 @@ extern "C" { #include <stdlib.h> #include <wctype.h> +extern char *__ctype_ptr__; extern char _ctype_b[128 + 256]; /* Called from newlib's setlocale(). What we do here is to copy the diff --git a/winsup/cygwin/include/cygwin/version.h b/winsup/cygwin/include/cygwin/version.h index 9ae5983f8..d912cba16 100644 --- a/winsup/cygwin/include/cygwin/version.h +++ b/winsup/cygwin/include/cygwin/version.h @@ -455,12 +455,18 @@ details. */ scalbl, scalblnl, scalbnl, sincosl, sinhl, sinl, tanhl, tanl, tgammal, truncl. 298: newlocale, freelocale, duplocale, uselocale. + 299: __locale_ctype_ptr_l, isalnum_l, isalpha_l, isascii_l, isblank_l, + iscntrl_l, isdigit_l, isgraph_l, islower_l, isprint_l, ispunct_l, + isspace_l, isupper_l, iswalnum_l, iswalpha_l, iswblank_l, iswcntrl_l, + iswctype_l, iswdigit_l, iswgraph_l, iswlower_l, iswprint_l, iswpunct_l, + iswspace_l, iswupper_l, iswxdigit_l, isxdigit_l, toascii_l, tolower_l, + toupper_l, towctrans_l, towlower_l, towupper_l, wctrans_l, wctype_l. Note that we forgot to bump the api for ualarm, strtoll, strtoull, sigaltstack, sethostname. */ #define CYGWIN_VERSION_API_MAJOR 0 -#define CYGWIN_VERSION_API_MINOR 298 +#define CYGWIN_VERSION_API_MINOR 299 /* There is also a compatibity version number associated with the shared memory regions. It is incremented when incompatible changes are made to the shared diff --git a/winsup/doc/posix.xml b/winsup/doc/posix.xml index 31ec8e005..38a5bbc89 100644 --- a/winsup/doc/posix.xml +++ b/winsup/doc/posix.xml @@ -410,14 +410,20 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> insque ioctl isalnum + isalnum_l isalpha + isalpha_l isascii isatty isblank + isblank_l iscntrl + iscntrl_l isdigit + isdigit_l isfinite (see chapter "Implementation Notes") isgraph + isgraph_l isgreater (see chapter "Implementation Notes") isgreaterequal (see chapter "Implementation Notes") isinf (see chapter "Implementation Notes") @@ -425,27 +431,46 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> islessequal (see chapter "Implementation Notes") islessgreater (see chapter "Implementation Notes") islower + islower_l isnan (see chapter "Implementation Notes") isnormal (see chapter "Implementation Notes") isprint + isprint_l ispunct + ispunct_l isspace + isspace_l isunordered (see chapter "Implementation Notes") isupper + isupper_l iswalnum + iswalnum_l iswalpha + iswalpha_l iswblank + iswblank_l iswcntrl + iswcntrl_l iswctype + iswctype_l iswdigit + iswdigit_l iswgraph + iswgraph_l iswlower + iswlower_l iswprint + iswprint_l iswpunct + iswpunct_l iswspace + iswspace_l iswupper + iswupper_l iswxdigit + iswxdigit_l isxdigit + isxdigit_l j0 j1 jn @@ -964,12 +989,16 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> timezone tmpfile tmpnam - toascii tolower + tolower_l toupper + toupper_l towctrans + towctrans_l towlower + towlower_l towupper + towupper_l trunc truncate truncf @@ -1052,7 +1081,9 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> wctob wctomb wctrans + wctrans_l wctype + wctype_l wcwidth wmemchr wmemcmp @@ -1313,6 +1344,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> tdestroy timegm timelocal + toascii_l updwtmpx utmpxname vasnprintf @@ -1460,6 +1492,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> sys_errlist (BSD) sys_nerr (BSD) sys_siglist (BSD) + toascii (SUSv3) ttyslot (SUSv2) ualarm (SUSv3) usleep (SUSv3) @@ -1490,32 +1523,7 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> getnetbyname getnetent getpmsg - isalnum_l - isalpha_l isastream - isblank_l - iscntrl_l - isdigit_l - isgraph_l - islower_l - isprint_l - ispunct_l - isspace_l - isupper_l - iswalnum_l - iswalpha_l - iswblank_l - iswcntrl_l - iswctype_l - iswdigit_l - iswgraph_l - iswlower_l - iswprint_l - iswpunct_l - iswspace_l - iswupper_l - iswxdigit_l - isxdigit_l lio_listio mlockall munlockall @@ -1537,19 +1545,12 @@ also IEEE Std 1003.1-2008 (POSIX.1-2008).</para> strncasecmp_l strxfrm_l timer_getoverrun - tolower_l - toupper_l - towctrans_l - towlower_l - towupper_l ulimit waitid wcscasecmp_l wcscoll_l wcsncasecmp_l wcsxfrm_l - wctrans_l - wctype_l </screen> </sect1> |