diff options
author | 1996-03-28 08:30:38 +0000 | |
---|---|---|
committer | 1996-03-28 08:30:38 +0000 | |
commit | 19bc17a90548ee427035994bbc4b14395723ff1f (patch) | |
tree | e7a17eda196c2610ca4be26c9e7985815162eafb /locale/C-ctype.c | |
parent | Wed Mar 27 14:52:11 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> (diff) | |
download | glibc-19bc17a90548ee427035994bbc4b14395723ff1f.tar.gz glibc-19bc17a90548ee427035994bbc4b14395723ff1f.tar.bz2 glibc-19bc17a90548ee427035994bbc4b14395723ff1f.zip |
Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* intl/Makefile (copysrc): Add missing > in sed cmd.
Sat Mar 23 17:52:49 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
change value to $(datadir)/i18n. `nls' is not an appropriate
name.
* Makefile (subdirs): Add new subdir wctype.
* ctype/ctype-info.c: Add new global variable __ctype_names
and initialize from _nl_C_LC_CTYPE.
* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
class. Use bit 11.
[_ISbit]: Protect definition of bitmasks because they are also
used in wctype.h.
* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
after successfully pushing back a character.
Fundamental changes in locale implementation. Almost nothing
from the old code is used anymore.
* locale/charmap.c, locale/collate.c, locale/config.h,
locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
locale/locale.c locale/localeconv.c, locale/localedef.c,
locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
locale/numeric.c, locale/setlocale.c, locale/token.h,
locale/xmalloc.c: Removed.
* locale/Makefile: Update for new locale implementation with
program source code distributed in subdir.
* locale/categories.def, locale/iso-4217.def: Updated file
for new locale implementation.
* locale/langinfo.h: Updated for new locale implementation.
(ERA_D_T_FMT, ERA_T_FMT): New official values according to
P1003.2b/D11.
(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
extended LC_CTYPE and LC_COLLATE implementation.
* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
locale/xstrdup.c: Helper functions for locale related programs.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c,
locale/lc-collate.c, locale/lc-ctype.c,
locale/lc-messages.c, locale/lc-monetary.c,
locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
functions, and new generated "C" locale data.
* locale/loadlocale.c: Now handles word fields in locale binary
automatically by changing the endianess if necessary.
* locale/localeinfo.h (LIMAGIC): Changed magic number because
of incompatible changes.
(locale_data): Changed definition to allow word as a value type.
(coll_sort_rule): Values for collation sorting mode.
(_NL_CURRENT_WORD): New macro to access word value of locale entry.
(__collate_table, __collate_extra): Declare new global variables
for collation tables.
* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
locale/programs/charmap.c, locale/programs/charset.c,
locale/programs/charset.h, locale/programs/config.h,
locale/programs/ctypedump.c, locale/programs/ld-collate.c,
locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
locale/programs/ld-time.c, locale/programs/linereader.c,
locale/programs/linereader.h, locale/programs/locale.c,
locale/programs/localedef.c, locale/programs/locales.h,
locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
locale/programs/locfile-token.h, locale/programs/locfile.c,
locale/programs/locfile.h, locale/programs/stringtrans.c,
locale/programs/stringtrans.h: Implementation of locale related
programs.
* locale/weight.h: Functions to access collation tables.
* posix/unistd.h: Define _POSIX2_LOCALEDEF.
* stdio-common/printf_fp.c: Fix bug with printing certain numbers
< 10^-1. Reported by Bill Metzenthen.
* stdio-common/tfformat.c: Add new test for above bug.
* string/strcoll.c, string/strxfrm.c: Real implementation of
string collation according to ISO C.
* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
Implementation of wide character classes and mapping.
Diffstat (limited to 'locale/C-ctype.c')
-rw-r--r-- | locale/C-ctype.c | 344 |
1 files changed, 321 insertions, 23 deletions
diff --git a/locale/C-ctype.c b/locale/C-ctype.c index 7a5c0c7b7f..8bf6beeea5 100644 --- a/locale/C-ctype.c +++ b/locale/C-ctype.c @@ -3,7 +3,7 @@ #include "localeinfo.h" #include <endian.h> -const char _nl_C_LC_CTYPE_class[] = +const char _nl_C_LC_CTYPE_class[768] = /* 0x80 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" /* 0x86 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" /* 0x8c */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" @@ -33,19 +33,19 @@ const char _nl_C_LC_CTYPE_class[] = /* 0x1c */ "\002\000" "\002\000" "\002\000" "\002\000" "\001\140" "\004\300" /* 0x22 */ "\004\300" "\004\300" "\004\300" "\004\300" "\004\300" "\004\300" /* 0x28 */ "\004\300" "\004\300" "\004\300" "\004\300" "\004\300" "\004\300" - /* 0x2e */ "\004\300" "\004\300" "\000\330" "\000\330" "\000\330" "\000\330" - /* 0x34 */ "\000\330" "\000\330" "\000\330" "\000\330" "\000\330" "\000\330" + /* 0x2e */ "\004\300" "\004\300" "\010\330" "\010\330" "\010\330" "\010\330" + /* 0x34 */ "\010\330" "\010\330" "\010\330" "\010\330" "\010\330" "\010\330" /* 0x3a */ "\004\300" "\004\300" "\004\300" "\004\300" "\004\300" "\004\300" - /* 0x40 */ "\004\300" "\000\325" "\000\325" "\000\325" "\000\325" "\000\325" - /* 0x46 */ "\000\325" "\000\305" "\000\305" "\000\305" "\000\305" "\000\305" - /* 0x4c */ "\000\305" "\000\305" "\000\305" "\000\305" "\000\305" "\000\305" - /* 0x52 */ "\000\305" "\000\305" "\000\305" "\000\305" "\000\305" "\000\305" - /* 0x58 */ "\000\305" "\000\305" "\000\305" "\004\300" "\004\300" "\004\300" - /* 0x5e */ "\004\300" "\004\300" "\004\300" "\000\326" "\000\326" "\000\326" - /* 0x64 */ "\000\326" "\000\326" "\000\326" "\000\306" "\000\306" "\000\306" - /* 0x6a */ "\000\306" "\000\306" "\000\306" "\000\306" "\000\306" "\000\306" - /* 0x70 */ "\000\306" "\000\306" "\000\306" "\000\306" "\000\306" "\000\306" - /* 0x76 */ "\000\306" "\000\306" "\000\306" "\000\306" "\000\306" "\004\300" + /* 0x40 */ "\004\300" "\010\325" "\010\325" "\010\325" "\010\325" "\010\325" + /* 0x46 */ "\010\325" "\010\305" "\010\305" "\010\305" "\010\305" "\010\305" + /* 0x4c */ "\010\305" "\010\305" "\010\305" "\010\305" "\010\305" "\010\305" + /* 0x52 */ "\010\305" "\010\305" "\010\305" "\010\305" "\010\305" "\010\305" + /* 0x58 */ "\010\305" "\010\305" "\010\305" "\004\300" "\004\300" "\004\300" + /* 0x5e */ "\004\300" "\004\300" "\004\300" "\010\326" "\010\326" "\010\326" + /* 0x64 */ "\010\326" "\010\326" "\010\326" "\010\306" "\010\306" "\010\306" + /* 0x6a */ "\010\306" "\010\306" "\010\306" "\010\306" "\010\306" "\010\306" + /* 0x70 */ "\010\306" "\010\306" "\010\306" "\010\306" "\010\306" "\010\306" + /* 0x76 */ "\010\306" "\010\306" "\010\306" "\010\306" "\010\306" "\004\300" /* 0x7c */ "\004\300" "\004\300" "\004\300" "\002\000" "\002\000" "\002\000" /* 0x82 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" /* 0x88 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" @@ -69,8 +69,96 @@ const char _nl_C_LC_CTYPE_class[] = /* 0xf4 */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" /* 0xfa */ "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" "\002\000" ; +const char _nl_C_LC_CTYPE_class32[1024] = + /* 0x00 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x03 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x06 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x09 */ "\003\040\000\000" "\002\040\000\000" "\002\040\000\000" + /* 0x0c */ "\002\040\000\000" "\002\040\000\000" "\002\000\000\000" + /* 0x0f */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x12 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x15 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x18 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x1b */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x1e */ "\002\000\000\000" "\002\000\000\000" "\001\140\000\000" + /* 0x21 */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x24 */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x27 */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x2a */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x2d */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x30 */ "\010\330\000\000" "\010\330\000\000" "\010\330\000\000" + /* 0x33 */ "\010\330\000\000" "\010\330\000\000" "\010\330\000\000" + /* 0x36 */ "\010\330\000\000" "\010\330\000\000" "\010\330\000\000" + /* 0x39 */ "\010\330\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x3c */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x3f */ "\004\300\000\000" "\004\300\000\000" "\010\325\000\000" + /* 0x42 */ "\010\325\000\000" "\010\325\000\000" "\010\325\000\000" + /* 0x45 */ "\010\325\000\000" "\010\325\000\000" "\010\305\000\000" + /* 0x48 */ "\010\305\000\000" "\010\305\000\000" "\010\305\000\000" + /* 0x4b */ "\010\305\000\000" "\010\305\000\000" "\010\305\000\000" + /* 0x4e */ "\010\305\000\000" "\010\305\000\000" "\010\305\000\000" + /* 0x51 */ "\010\305\000\000" "\010\305\000\000" "\010\305\000\000" + /* 0x54 */ "\010\305\000\000" "\010\305\000\000" "\010\305\000\000" + /* 0x57 */ "\010\305\000\000" "\010\305\000\000" "\010\305\000\000" + /* 0x5a */ "\010\305\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x5d */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x60 */ "\004\300\000\000" "\010\326\000\000" "\010\326\000\000" + /* 0x63 */ "\010\326\000\000" "\010\326\000\000" "\010\326\000\000" + /* 0x66 */ "\010\326\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x69 */ "\010\306\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x6c */ "\010\306\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x6f */ "\010\306\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x72 */ "\010\306\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x75 */ "\010\306\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x78 */ "\010\306\000\000" "\010\306\000\000" "\010\306\000\000" + /* 0x7b */ "\004\300\000\000" "\004\300\000\000" "\004\300\000\000" + /* 0x7e */ "\004\300\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x81 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x84 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x87 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x8a */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x8d */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x90 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x93 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x96 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x99 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x9c */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0x9f */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xa2 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xa5 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xa8 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xab */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xae */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xb1 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xb4 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xb7 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xba */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xbd */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xc0 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xc3 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xc6 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xc9 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xcc */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xcf */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xd2 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xd5 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xd8 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xdb */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xde */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xe1 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xe4 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xe7 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xea */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xed */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xf0 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xf3 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xf6 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xf9 */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xfc */ "\002\000\000\000" "\002\000\000\000" "\002\000\000\000" + /* 0xff */ "\002\000\000\000" +; #if BYTE_ORDER == LITTLE_ENDIAN -const char _nl_C_LC_CTYPE_toupper[] = +const char _nl_C_LC_CTYPE_toupper[1536] = /* 0x80 */ "\200\000\000\000" "\201\000\000\000" "\202\000\000\000" /* 0x83 */ "\203\000\000\000" "\204\000\000\000" "\205\000\000\000" /* 0x86 */ "\206\000\000\000" "\207\000\000\000" "\210\000\000\000" @@ -200,7 +288,7 @@ const char _nl_C_LC_CTYPE_toupper[] = /* 0xfa */ "\372\000\000\000" "\373\000\000\000" "\374\000\000\000" /* 0xfd */ "\375\000\000\000" "\376\000\000\000" "\377\000\000\000" ; -const char _nl_C_LC_CTYPE_tolower[] = +const char _nl_C_LC_CTYPE_tolower[1536] = /* 0x80 */ "\200\000\000\000" "\201\000\000\000" "\202\000\000\000" /* 0x83 */ "\203\000\000\000" "\204\000\000\000" "\205\000\000\000" /* 0x86 */ "\206\000\000\000" "\207\000\000\000" "\210\000\000\000" @@ -330,8 +418,96 @@ const char _nl_C_LC_CTYPE_tolower[] = /* 0xfa */ "\372\000\000\000" "\373\000\000\000" "\374\000\000\000" /* 0xfd */ "\375\000\000\000" "\376\000\000\000" "\377\000\000\000" ; +const char _nl_C_LC_CTYPE_names[1024] = + /* 0x00 */ "\000\000\000\000" "\001\000\000\000" "\002\000\000\000" + /* 0x03 */ "\003\000\000\000" "\004\000\000\000" "\005\000\000\000" + /* 0x06 */ "\006\000\000\000" "\007\000\000\000" "\010\000\000\000" + /* 0x09 */ "\011\000\000\000" "\012\000\000\000" "\013\000\000\000" + /* 0x0c */ "\014\000\000\000" "\015\000\000\000" "\016\000\000\000" + /* 0x0f */ "\017\000\000\000" "\020\000\000\000" "\021\000\000\000" + /* 0x12 */ "\022\000\000\000" "\023\000\000\000" "\024\000\000\000" + /* 0x15 */ "\025\000\000\000" "\026\000\000\000" "\027\000\000\000" + /* 0x18 */ "\030\000\000\000" "\031\000\000\000" "\032\000\000\000" + /* 0x1b */ "\033\000\000\000" "\034\000\000\000" "\035\000\000\000" + /* 0x1e */ "\036\000\000\000" "\037\000\000\000" "\040\000\000\000" + /* 0x21 */ "\041\000\000\000" "\042\000\000\000" "\043\000\000\000" + /* 0x24 */ "\044\000\000\000" "\045\000\000\000" "\046\000\000\000" + /* 0x27 */ "\047\000\000\000" "\050\000\000\000" "\051\000\000\000" + /* 0x2a */ "\052\000\000\000" "\053\000\000\000" "\054\000\000\000" + /* 0x2d */ "\055\000\000\000" "\056\000\000\000" "\057\000\000\000" + /* 0x30 */ "\060\000\000\000" "\061\000\000\000" "\062\000\000\000" + /* 0x33 */ "\063\000\000\000" "\064\000\000\000" "\065\000\000\000" + /* 0x36 */ "\066\000\000\000" "\067\000\000\000" "\070\000\000\000" + /* 0x39 */ "\071\000\000\000" "\072\000\000\000" "\073\000\000\000" + /* 0x3c */ "\074\000\000\000" "\075\000\000\000" "\076\000\000\000" + /* 0x3f */ "\077\000\000\000" "\100\000\000\000" "\101\000\000\000" + /* 0x42 */ "\102\000\000\000" "\103\000\000\000" "\104\000\000\000" + /* 0x45 */ "\105\000\000\000" "\106\000\000\000" "\107\000\000\000" + /* 0x48 */ "\110\000\000\000" "\111\000\000\000" "\112\000\000\000" + /* 0x4b */ "\113\000\000\000" "\114\000\000\000" "\115\000\000\000" + /* 0x4e */ "\116\000\000\000" "\117\000\000\000" "\120\000\000\000" + /* 0x51 */ "\121\000\000\000" "\122\000\000\000" "\123\000\000\000" + /* 0x54 */ "\124\000\000\000" "\125\000\000\000" "\126\000\000\000" + /* 0x57 */ "\127\000\000\000" "\130\000\000\000" "\131\000\000\000" + /* 0x5a */ "\132\000\000\000" "\133\000\000\000" "\134\000\000\000" + /* 0x5d */ "\135\000\000\000" "\136\000\000\000" "\137\000\000\000" + /* 0x60 */ "\140\000\000\000" "\141\000\000\000" "\142\000\000\000" + /* 0x63 */ "\143\000\000\000" "\144\000\000\000" "\145\000\000\000" + /* 0x66 */ "\146\000\000\000" "\147\000\000\000" "\150\000\000\000" + /* 0x69 */ "\151\000\000\000" "\152\000\000\000" "\153\000\000\000" + /* 0x6c */ "\154\000\000\000" "\155\000\000\000" "\156\000\000\000" + /* 0x6f */ "\157\000\000\000" "\160\000\000\000" "\161\000\000\000" + /* 0x72 */ "\162\000\000\000" "\163\000\000\000" "\164\000\000\000" + /* 0x75 */ "\165\000\000\000" "\166\000\000\000" "\167\000\000\000" + /* 0x78 */ "\170\000\000\000" "\171\000\000\000" "\172\000\000\000" + /* 0x7b */ "\173\000\000\000" "\174\000\000\000" "\175\000\000\000" + /* 0x7e */ "\176\000\000\000" "\177\000\000\000" "\200\000\000\000" + /* 0x81 */ "\201\000\000\000" "\202\000\000\000" "\203\000\000\000" + /* 0x84 */ "\204\000\000\000" "\205\000\000\000" "\206\000\000\000" + /* 0x87 */ "\207\000\000\000" "\210\000\000\000" "\211\000\000\000" + /* 0x8a */ "\212\000\000\000" "\213\000\000\000" "\214\000\000\000" + /* 0x8d */ "\215\000\000\000" "\216\000\000\000" "\217\000\000\000" + /* 0x90 */ "\220\000\000\000" "\221\000\000\000" "\222\000\000\000" + /* 0x93 */ "\223\000\000\000" "\224\000\000\000" "\225\000\000\000" + /* 0x96 */ "\226\000\000\000" "\227\000\000\000" "\230\000\000\000" + /* 0x99 */ "\231\000\000\000" "\232\000\000\000" "\233\000\000\000" + /* 0x9c */ "\234\000\000\000" "\235\000\000\000" "\236\000\000\000" + /* 0x9f */ "\237\000\000\000" "\240\000\000\000" "\241\000\000\000" + /* 0xa2 */ "\242\000\000\000" "\243\000\000\000" "\244\000\000\000" + /* 0xa5 */ "\245\000\000\000" "\246\000\000\000" "\247\000\000\000" + /* 0xa8 */ "\250\000\000\000" "\251\000\000\000" "\252\000\000\000" + /* 0xab */ "\253\000\000\000" "\254\000\000\000" "\255\000\000\000" + /* 0xae */ "\256\000\000\000" "\257\000\000\000" "\260\000\000\000" + /* 0xb1 */ "\261\000\000\000" "\262\000\000\000" "\263\000\000\000" + /* 0xb4 */ "\264\000\000\000" "\265\000\000\000" "\266\000\000\000" + /* 0xb7 */ "\267\000\000\000" "\270\000\000\000" "\271\000\000\000" + /* 0xba */ "\272\000\000\000" "\273\000\000\000" "\274\000\000\000" + /* 0xbd */ "\275\000\000\000" "\276\000\000\000" "\277\000\000\000" + /* 0xc0 */ "\300\000\000\000" "\301\000\000\000" "\302\000\000\000" + /* 0xc3 */ "\303\000\000\000" "\304\000\000\000" "\305\000\000\000" + /* 0xc6 */ "\306\000\000\000" "\307\000\000\000" "\310\000\000\000" + /* 0xc9 */ "\311\000\000\000" "\312\000\000\000" "\313\000\000\000" + /* 0xcc */ "\314\000\000\000" "\315\000\000\000" "\316\000\000\000" + /* 0xcf */ "\317\000\000\000" "\320\000\000\000" "\321\000\000\000" + /* 0xd2 */ "\322\000\000\000" "\323\000\000\000" "\324\000\000\000" + /* 0xd5 */ "\325\000\000\000" "\326\000\000\000" "\327\000\000\000" + /* 0xd8 */ "\330\000\000\000" "\331\000\000\000" "\332\000\000\000" + /* 0xdb */ "\333\000\000\000" "\334\000\000\000" "\335\000\000\000" + /* 0xde */ "\336\000\000\000" "\337\000\000\000" "\340\000\000\000" + /* 0xe1 */ "\341\000\000\000" "\342\000\000\000" "\343\000\000\000" + /* 0xe4 */ "\344\000\000\000" "\345\000\000\000" "\346\000\000\000" + /* 0xe7 */ "\347\000\000\000" "\350\000\000\000" "\351\000\000\000" + /* 0xea */ "\352\000\000\000" "\353\000\000\000" "\354\000\000\000" + /* 0xed */ "\355\000\000\000" "\356\000\000\000" "\357\000\000\000" + /* 0xf0 */ "\360\000\000\000" "\361\000\000\000" "\362\000\000\000" + /* 0xf3 */ "\363\000\000\000" "\364\000\000\000" "\365\000\000\000" + /* 0xf6 */ "\366\000\000\000" "\367\000\000\000" "\370\000\000\000" + /* 0xf9 */ "\371\000\000\000" "\372\000\000\000" "\373\000\000\000" + /* 0xfc */ "\374\000\000\000" "\375\000\000\000" "\376\000\000\000" + /* 0xff */ "\377\000\000\000" +; #elif BYTE_ORDER == BIG_ENDIAN -const char _nl_C_LC_CTYPE_toupper[] = +const char _nl_C_LC_CTYPE_toupper[1536] = /* 0x80 */ "\000\000\000\200" "\000\000\000\201" "\000\000\000\202" /* 0x83 */ "\000\000\000\203" "\000\000\000\204" "\000\000\000\205" /* 0x86 */ "\000\000\000\206" "\000\000\000\207" "\000\000\000\210" @@ -461,7 +637,7 @@ const char _nl_C_LC_CTYPE_toupper[] = /* 0xfa */ "\000\000\000\372" "\000\000\000\373" "\000\000\000\374" /* 0xfd */ "\000\000\000\375" "\000\000\000\376" "\000\000\000\377" ; -const char _nl_C_LC_CTYPE_tolower[] = +const char _nl_C_LC_CTYPE_tolower[1536] = /* 0x80 */ "\000\000\000\200" "\000\000\000\201" "\000\000\000\202" /* 0x83 */ "\000\000\000\203" "\000\000\000\204" "\000\000\000\205" /* 0x86 */ "\000\000\000\206" "\000\000\000\207" "\000\000\000\210" @@ -591,18 +767,140 @@ const char _nl_C_LC_CTYPE_tolower[] = /* 0xfa */ "\000\000\000\372" "\000\000\000\373" "\000\000\000\374" /* 0xfd */ "\000\000\000\375" "\000\000\000\376" "\000\000\000\377" ; +const char _nl_C_LC_CTYPE_names[1024] = + /* 0x00 */ "\000\000\000\000" "\000\000\000\001" "\000\000\000\002" + /* 0x03 */ "\000\000\000\003" "\000\000\000\004" "\000\000\000\005" + /* 0x06 */ "\000\000\000\006" "\000\000\000\007" "\000\000\000\010" + /* 0x09 */ "\000\000\000\011" "\000\000\000\012" "\000\000\000\013" + /* 0x0c */ "\000\000\000\014" "\000\000\000\015" "\000\000\000\016" + /* 0x0f */ "\000\000\000\017" "\000\000\000\020" "\000\000\000\021" + /* 0x12 */ "\000\000\000\022" "\000\000\000\023" "\000\000\000\024" + /* 0x15 */ "\000\000\000\025" "\000\000\000\026" "\000\000\000\027" + /* 0x18 */ "\000\000\000\030" "\000\000\000\031" "\000\000\000\032" + /* 0x1b */ "\000\000\000\033" "\000\000\000\034" "\000\000\000\035" + /* 0x1e */ "\000\000\000\036" "\000\000\000\037" "\000\000\000\040" + /* 0x21 */ "\000\000\000\041" "\000\000\000\042" "\000\000\000\043" + /* 0x24 */ "\000\000\000\044" "\000\000\000\045" "\000\000\000\046" + /* 0x27 */ "\000\000\000\047" "\000\000\000\050" "\000\000\000\051" + /* 0x2a */ "\000\000\000\052" "\000\000\000\053" "\000\000\000\054" + /* 0x2d */ "\000\000\000\055" "\000\000\000\056" "\000\000\000\057" + /* 0x30 */ "\000\000\000\060" "\000\000\000\061" "\000\000\000\062" + /* 0x33 */ "\000\000\000\063" "\000\000\000\064" "\000\000\000\065" + /* 0x36 */ "\000\000\000\066" "\000\000\000\067" "\000\000\000\070" + /* 0x39 */ "\000\000\000\071" "\000\000\000\072" "\000\000\000\073" + /* 0x3c */ "\000\000\000\074" "\000\000\000\075" "\000\000\000\076" + /* 0x3f */ "\000\000\000\077" "\000\000\000\100" "\000\000\000\101" + /* 0x42 */ "\000\000\000\102" "\000\000\000\103" "\000\000\000\104" + /* 0x45 */ "\000\000\000\105" "\000\000\000\106" "\000\000\000\107" + /* 0x48 */ "\000\000\000\110" "\000\000\000\111" "\000\000\000\112" + /* 0x4b */ "\000\000\000\113" "\000\000\000\114" "\000\000\000\115" + /* 0x4e */ "\000\000\000\116" "\000\000\000\117" "\000\000\000\120" + /* 0x51 */ "\000\000\000\121" "\000\000\000\122" "\000\000\000\123" + /* 0x54 */ "\000\000\000\124" "\000\000\000\125" "\000\000\000\126" + /* 0x57 */ "\000\000\000\127" "\000\000\000\130" "\000\000\000\131" + /* 0x5a */ "\000\000\000\132" "\000\000\000\133" "\000\000\000\134" + /* 0x5d */ "\000\000\000\135" "\000\000\000\136" "\000\000\000\137" + /* 0x60 */ "\000\000\000\140" "\000\000\000\141" "\000\000\000\142" + /* 0x63 */ "\000\000\000\143" "\000\000\000\144" "\000\000\000\145" + /* 0x66 */ "\000\000\000\146" "\000\000\000\147" "\000\000\000\150" + /* 0x69 */ "\000\000\000\151" "\000\000\000\152" "\000\000\000\153" + /* 0x6c */ "\000\000\000\154" "\000\000\000\155" "\000\000\000\156" + /* 0x6f */ "\000\000\000\157" "\000\000\000\160" "\000\000\000\161" + /* 0x72 */ "\000\000\000\162" "\000\000\000\163" "\000\000\000\164" + /* 0x75 */ "\000\000\000\165" "\000\000\000\166" "\000\000\000\167" + /* 0x78 */ "\000\000\000\170" "\000\000\000\171" "\000\000\000\172" + /* 0x7b */ "\000\000\000\173" "\000\000\000\174" "\000\000\000\175" + /* 0x7e */ "\000\000\000\176" "\000\000\000\177" "\000\000\000\200" + /* 0x81 */ "\000\000\000\201" "\000\000\000\202" "\000\000\000\203" + /* 0x84 */ "\000\000\000\204" "\000\000\000\205" "\000\000\000\206" + /* 0x87 */ "\000\000\000\207" "\000\000\000\210" "\000\000\000\211" + /* 0x8a */ "\000\000\000\212" "\000\000\000\213" "\000\000\000\214" + /* 0x8d */ "\000\000\000\215" "\000\000\000\216" "\000\000\000\217" + /* 0x90 */ "\000\000\000\220" "\000\000\000\221" "\000\000\000\222" + /* 0x93 */ "\000\000\000\223" "\000\000\000\224" "\000\000\000\225" + /* 0x96 */ "\000\000\000\226" "\000\000\000\227" "\000\000\000\230" + /* 0x99 */ "\000\000\000\231" "\000\000\000\232" "\000\000\000\233" + /* 0x9c */ "\000\000\000\234" "\000\000\000\235" "\000\000\000\236" + /* 0x9f */ "\000\000\000\237" "\000\000\000\240" "\000\000\000\241" + /* 0xa2 */ "\000\000\000\242" "\000\000\000\243" "\000\000\000\244" + /* 0xa5 */ "\000\000\000\245" "\000\000\000\246" "\000\000\000\247" + /* 0xa8 */ "\000\000\000\250" "\000\000\000\251" "\000\000\000\252" + /* 0xab */ "\000\000\000\253" "\000\000\000\254" "\000\000\000\255" + /* 0xae */ "\000\000\000\256" "\000\000\000\257" "\000\000\000\260" + /* 0xb1 */ "\000\000\000\261" "\000\000\000\262" "\000\000\000\263" + /* 0xb4 */ "\000\000\000\264" "\000\000\000\265" "\000\000\000\266" + /* 0xb7 */ "\000\000\000\267" "\000\000\000\270" "\000\000\000\271" + /* 0xba */ "\000\000\000\272" "\000\000\000\273" "\000\000\000\274" + /* 0xbd */ "\000\000\000\275" "\000\000\000\276" "\000\000\000\277" + /* 0xc0 */ "\000\000\000\300" "\000\000\000\301" "\000\000\000\302" + /* 0xc3 */ "\000\000\000\303" "\000\000\000\304" "\000\000\000\305" + /* 0xc6 */ "\000\000\000\306" "\000\000\000\307" "\000\000\000\310" + /* 0xc9 */ "\000\000\000\311" "\000\000\000\312" "\000\000\000\313" + /* 0xcc */ "\000\000\000\314" "\000\000\000\315" "\000\000\000\316" + /* 0xcf */ "\000\000\000\317" "\000\000\000\320" "\000\000\000\321" + /* 0xd2 */ "\000\000\000\322" "\000\000\000\323" "\000\000\000\324" + /* 0xd5 */ "\000\000\000\325" "\000\000\000\326" "\000\000\000\327" + /* 0xd8 */ "\000\000\000\330" "\000\000\000\331" "\000\000\000\332" + /* 0xdb */ "\000\000\000\333" "\000\000\000\334" "\000\000\000\335" + /* 0xde */ "\000\000\000\336" "\000\000\000\337" "\000\000\000\340" + /* 0xe1 */ "\000\000\000\341" "\000\000\000\342" "\000\000\000\343" + /* 0xe4 */ "\000\000\000\344" "\000\000\000\345" "\000\000\000\346" + /* 0xe7 */ "\000\000\000\347" "\000\000\000\350" "\000\000\000\351" + /* 0xea */ "\000\000\000\352" "\000\000\000\353" "\000\000\000\354" + /* 0xed */ "\000\000\000\355" "\000\000\000\356" "\000\000\000\357" + /* 0xf0 */ "\000\000\000\360" "\000\000\000\361" "\000\000\000\362" + /* 0xf3 */ "\000\000\000\363" "\000\000\000\364" "\000\000\000\365" + /* 0xf6 */ "\000\000\000\366" "\000\000\000\367" "\000\000\000\370" + /* 0xf9 */ "\000\000\000\371" "\000\000\000\372" "\000\000\000\373" + /* 0xfc */ "\000\000\000\374" "\000\000\000\375" "\000\000\000\376" + /* 0xff */ "\000\000\000\377" +; #else #error "BYTE_ORDER" BYTE_ORDER " not handled." #endif +const char _nl_C_LC_CTYPE_width[256] = +/* 0x00 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x10 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x20 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x30 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x40 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x50 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x60 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x70 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x80 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0x90 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0xa0 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0xb0 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0xc0 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0xd0 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0xe0 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +/* 0xf0 */ "\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001\001" +; -const struct locale_data _nl_C_LC_CTYPE = +const struct locale_data _nl_C_LC_CTYPE = { NULL, 0, /* no file mapped */ - 5, + 13, { - _nl_C_LC_CTYPE_class, - NULL, NULL, - _nl_C_LC_CTYPE_toupper, - _nl_C_LC_CTYPE_tolower + { string: _nl_C_LC_CTYPE_class }, +#if BYTE_ORDER == LITTLE_ENDIAN + { string: NULL }, { string: NULL }, +#endif + { string: _nl_C_LC_CTYPE_toupper }, + { string: _nl_C_LC_CTYPE_tolower }, + { string: NULL }, +#if BYTE_ORDER == BIG_ENDIAN + { string: NULL }, +#endif + { string: _nl_C_LC_CTYPE_class32 }, + { string: _nl_C_LC_CTYPE_names }, +#if BYTE_ORDER == BIG_ENDIAN + { string: NULL }, +#endif + { word: 256 }, { word: 1 }, + { string: "upper\0" "lower\0" "alpha\0" "digit\0" "xdigit\0" "space\0" + "print\0" "graph\0" "blank\0" "cntrl\0" "punct\0" "alnum\0" }, + { string: "tolower\0" "toupper\0" }, + { string: _nl_C_LC_CTYPE_width } } }; |