Commit Graph

257 Commits

Author SHA1 Message Date
Ulrich Drepper
7535b2d92d Update.
* locale/programs/locale.c (print_item): Fix one more problem with
	string lists.  Patch by Chen Xiangyang <chenxy@opencjk.org>.

	* locale/categories.def: Add number of arguments to ctype-map-names
	and ctype-class-names entries.  Mark era as stringlist.
2000-10-31 17:44:49 +00:00
Ulrich Drepper
beaaf574bf Update.
* locale/localeinfo.h (enum value_type): Add wstring, wstringarray,
	and wstringlist.
	* locale/categories.def: Mark wide char strings as wstring or
	stringarray.
	* locale/programs/locale.c (show_info): Handle wstring, wstringarray,
	and wstringlist.  Print keywords only if there is real output.
	Reported by Chen Xiangyang <chenxy@opencjk.org>.

	* sysdeps/sparc/fpu/bits/mathinline.h: Add __THROW where necessary.
	Patch by Ben Collins <bcollins@debian.org>.
2000-10-31 06:06:35 +00:00
Ulrich Drepper
02fb3d179d Update.
* posix/runtests.c (main): Don't use exit() to avoid warning with
	broken compilers.

	* string/bug-strncat1.c: Undefine __USE_STRING_INLINES before
	defining it again to avoid warning.
	* string/bug-strpbrk1.c: Likewise.
	* string/bug-strspn1.c: Likewise.

2000-10-29  Bruno Haible  <haible@clisp.cons.org>

	* locale/C-translit.h.in: Include more rules from translit_neutral.
	Remove a few German and Danish specific rules.
	* locale/gen-translit.pl: Avoid an error when printing a string
	containing a '%' character.
	* locale/C-translit.h: Regenerated.
	* intl/translit.po: Choose different translations.
	* intl/tst-translit.c: Update.

2000-10-29  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-ctype.c (translit_include_t): New type.
	(locale_ctype_t): Remove translit_copy_locale, translit_copy_repertoire
	fields, add translit_include field.
	(ctype_read): After seeing "translit_start" in ignore_content mode,
	skip the entire translit section, not only one line. Remove dead test
	for tok_translit_end. Enqueue include statements into a list.
	Signal error if tok_eof seen before tok_translit_end.
	(translit_flatten): New function.
	(allocate_arrays): Call translit_flatten.

2000-10-30  Ulrich Drepper  <drepper@redhat.com>
2000-10-31 04:38:55 +00:00
Ulrich Drepper
d8337213c8 Update.
* locale/C-monetary.c: Set mon_decimal to empty string.
	Add missing entry _NL_MONETARY_CRNCYSTR.
	* stdio-common/printf_fp.c: If MON_DECIAL_POINT is not provided use
	DECIMAL_POINT information.
	* locale/C-numeric.c: Set mon_grouping entry to empty string.
	* locale/C-time.c: Add date_fmt entries.  Remove two wrong entries.
	Correct value for number of entries.
	* locale/localeconv.c: Normalize result passed back in .grouping.
	Fix assignment to .int_* entries.

	* locale/Makefile (tests): Add tst-C-locale.
	* locale/tst-C-locale.c: New file.

	* locale/setlocale.c: Use LOCALEDIR and not LOCALE_PATH to locate
	locale files.
	* locale/newlocale.c: Likewise.

2000-10-26  GOTO Masanori  <gotom@debian.or.jp>

	* locale/langinfo.h: Define _DATE_FMT and _NL_W_DATE_FMT.
	* locale/categories.def: New support for date_fmt.
	* locale/programs/ld-time.c: Likewise.
	* locale/programs/locfile-kw.gperf: Likewise.
	* locale/programs/locfile-kw.h: Likewise.
	* locale/programs/locfile-token.h: Likewise.

2000-10-26  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ieee754/ldbl-128/e_hypotl.c: New.

	* math/libm-test.inc (cabs_test, cexp_test, csqrt_test, hypot_test):
	Increase precision of constants.
	* sysdeps/alpha/fpu/libm-test-ulps: Update.
	* sysdeps/arm/libm-test-ulps: Update.
	* sysdeps/i386/fpu/libm-test-ulps: Update.
	* sysdeps/ia64/fpu/libm-test-ulps: Update.
	* sysdeps/m68k/fpu/libm-test-ulps: Update.
	* sysdeps/mips/fpu/libm-test-ulps: Update.
	* sysdeps/powerpc/fpu/libm-test-ulps: Update.
	* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
	* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
	* sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
	* sysdeps/s390/fpu/libm-test-ulps: Update.

2000-10-26  Ulrich Drepper  <drepper@redhat.com>
2000-10-26 23:41:17 +00:00
Ulrich Drepper
d5fd1f3fd8 Update.
2000-10-03  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/linereader.c (get_string): Also clear wide
	string info if illegal_string.
2000-10-03 23:18:12 +00:00
Ulrich Drepper
3e07621988 Update.
2000-10-01  Bruno Haible  <haible@clisp.cons.org>

	* charmaps/BIG5: Add a width table.
	* charmaps/GB18030: Likewise.
	* charmaps/ISO-8859-6: Likewise.
	* charmaps/ISO-8859-8: Likewise.
	* charmaps/TIS-620: Likewise.
2000-10-01 19:15:29 +00:00
Ulrich Drepper
4a9dcff10e Update.
* charmaps/ISO-IR-197: Remove alias "none".

2000-09-30  Bruno Haible  <haible@clisp.cons.org>
2000-10-01 18:59:42 +00:00
Ulrich Drepper
d6040f1781 Update.
2000-09-30  Bruno Haible  <haible@clisp.cons.org>

	* tests-mbwc/tst_wcscmp.c (tst_wcscmp): Take the sign of ret.
	* tests-mbwc/dat_wcscmp.c (tst_wcscmp_loc): Don't expect precise
	return values.  Only the sign matters.
2000-10-01 18:47:09 +00:00
Ulrich Drepper
09bf6406b1 Update.
2000-09-26  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/sparc/sparc32/bits/endian.h: Remove.
	* sysdeps/sparc/sparc32/ieee754.h: New.
	* sysdeps/sparc/sparc64/bits/endian.h: Move...
	* sysdeps/sparc/bits/endian.h: ...here.
	* sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Optimize.
	* sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): Check
	%o1, not %o0 to see if we're parent or child.  Optimize.

2000-09-26  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/unix/sysv/linux/ia64/fork.S: New file (based on code
	by Hans Boehm).
	* sysdeps/unix/sysv/linux/ia64/vfork.S: New file (based on
	code by Hans Boehm).
	* sysdeps/unix/sysv/linux/ia64/fork.c: Deleted (obsoleted by fork.S).

2000-09-20  H.J. Lu  <hjl@gnu.org>

	* sysdeps/ia64/fpu/printf_fphex.c: New file.

	* sysdeps/ia64/fpu/libm-test-ulps: New file.

2000-09-17  H.J. Lu  <hjl@gnu.org>

	* sysdeps/ia64/Makefile (long-double-fcts): New.  Defined as yes.

	* sysdeps/ia64/fpu/s_isinfl.c: New file.  Include
	sysdeps/i386/fpu/s_isinfl.c.

	* sysdeps/ia64/fpu/s_isnanl.c: New file.  Include
	sysdeps/i386/fpu/s_isnanl.c.

	* sysdeps/ia64/fpu/s_nextafterl.c: New file.  Include
	sysdeps/i386/fpu/s_nextafterl.c.

	* sysdeps/ia64/fpu/bits/mathdef.h: New file.  Copied from
	sysdeps/i386/fpu/bits/mathdef.h.

2000-09-16  H.J. Lu  <hjl@gnu.org>

	* sysdeps/generic/ldsodefs.h (DL_UNMAP): New.  Defined if
	DL_UNMAP_IS_SPECIAL is not defined.

	* sysdeps/ia64/dl-lookupcfg.h (DL_UNMAP_IS_SPECIAL): Defined.
	(_dl_unmap): New prototype.
	(DL_UNMAP): New.  Defined as _dl_unmap.

	* sysdeps/ia64/Versions [ld] (GLIBC_2.2): Add _dl_unmap.

	* elf/dl-close.c (_dl_close): Replace __munmap with DL_UNMAP.

2000-09-16  H.J. Lu  <hjl@gnu.org>

	* sysdeps/generic/ldsodefs.h (DL_LOOKUP_ADDRESS): New. Defined
	if ELF_FUNCTION_PTR_IS_SPECIAL is not defined.

	* sysdeps/ia64/dl-lookupcfg.h (_dl_lookup_address): New
	prototype.
	(DL_LOOKUP_ADDRESS): New. Defined as _dl_lookup_address.

	* sysdeps/ia64/dl-fptr.c (_dl_lookup_address): New. Lookup
	the memory location of a function from a function descriptor.

	* sysdeps/ia64/Versions [ld] (GLIBC_2.2): Add _dl_lookup_address.

	* elf/dl-addr.c (_dl_addr): Use DL_LOOKUP_ADDRESS to get the
	memory location.

2000-09-14  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/ia64/bits/byteswap.h (__bswap_16): Don't mark output
	variable as input argument.
	(__bswap_32): Likewise.

	* sysdeps/ia64/dl-machine.h: Add missing stop bit in RTLD_START()
	- found by Jim Wilson <wilson@cygnus.com>

2000-09-26  Ulrich Drepper  <drepper@redhat.com>

	* string/strxfrm.c: Only require alignment on __alignof__ (int32_t)
	instead of 4.

2000-09-26  Andreas Schwab  <schwab@suse.de>

	* locale/programs/ld-collate.c (collate_output): Only require
	alignment on __alignof__ (int32_t) instead of 4.
	* locale/loadlocale.c (_nl_load_locale): Likewise.
	* string/strcoll.c: Likewise.

2000-09-26  Jes Sorensen  <jes@linuxcare.com>

	* sysdeps/ieee754/ldbl-96/e_atan2l.c (__ieee754_atan2l): Add
	parentheses around arithmetic used in | statement to kill compiler
	warning.

	* math/math_private.h: Add prototype for __finitel.
	(__ilogbl): Likewise.
	(__isinfl): Likewise.
	(__isnanl): Likewise.
	(__atanl): Likewise.
	(__copysignl): Likewise.
	(__expm1l): Likewise.
	(__floorl): Likewise.
	(__frexpl): Likewise.
	(__ldexpl): Likewise.
	(__log1pl): Likewise.
	(__nanl): Likewise.
	(__rintl): Likewise.
	(__scalbnl): Likewise.
	(__sqrtl): Likewise.
	(fabsl): Likewise.
	(__sincosl): Likewise.

	(si_isr) [USE_GNU]: Likewise.
	(ILL_BREAK) [USE_GNU]: Likewise.
	(FPE_DECOVF) [USE_GNU]: Likewise.
	(FPE_DECDIV) [USE_GNU]: Likewise.
	(FPE_DECERR) [USE_GNU]: Likewise.
	(FPE_INVASC) [USE_GNU]: Likewise.
	(FPE_INVDEC) [USE_GNU]: Likewise.
	(TRAP_BRANCH) [USE_GNU]: Likewise.
	(TRAP_HWBKPT) [USE_GNU]: Likewise.
	* sysdeps/ieee754/flt-32/s_exp2f.c: Likewise.
2000-09-26 19:13:37 +00:00
Andreas Jaeger
646b69707e Update.
* locale/programs/repertoire.c (repertoiremap_hash): Don't specify
	array size.
2000-09-22 15:12:09 +00:00
Ulrich Drepper
f6ad47269a Update.
2000-09-10  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-collate.c (collate_read): Fix typo in handling
	of decimal ellipsis.

2000-09-11  Bruno Haible <haible@clisp.cons.org>

	* locale/programs/ld-collate.c (collate_read): Always initialize
	error_section.next.

2000-09-10  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-collate.c (collate_finish): Upper bound for
	ruleidx is 128, not 256.

2000-09-11  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-collate.c (collate_read): Correct check for
	already inserted entries.

2000-09-10  Bruno Haible <haible@clisp.cons.org>

	* iconv/skeleton.c (FUNCTION_NAME): Handle unaligned access in
	second try as well.

2000-09-10  Bruno Haible <haible@clisp.cons.org>

	* iconv/skeleton.c (FUNCTION_NAME): Optimize an `if' if
	MAX_NEEDED_FROM > 1 && MAX_NEEDED_TO > 1.

2000-09-10  Bruno Haible <haible@clisp.cons.org>

	* iconv/skeleton.c (gconv_init): Replace all uses of RESET_STATE with
	SAVE_RESET_STATE.

2000-09-10  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/utf-7.c: New file.
	* iconvdata/gconv-modules (UTF-7): New module entries.
	* iconvdata/Makefile (modules): Add UTF-7.
	(distribute): Add utf-7.c.
	* iconvdata/testdata/UTF-7: New file.
	* iconvdata/testdata/UTF-7..UTF8: New file.
	* iconvdata/TESTS (UTF-7): New entry.
	* iconvdata/run-iconv-test.sh: Fix confusing output.
2000-09-11 20:33:59 +00:00
Ulrich Drepper
ab52d206a3 Update.
2000-09-10  David S. Miller  <davem@redhat.com>

	* sysdeps/sparc/sparc32/__longjmp.S (__longjmp): Correct %fp
	frame pointer offset for non-fast path.

2000-09-10  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/3level.h (*_init): Initialize level1, level2,
	and level3 as well.
	(*_add): Remove a few unnecessary conditionals.
2000-09-11 07:01:16 +00:00
Andreas Jaeger
6ce42684c4 * locale/programs/ld-collate.c (handle_ellipsis): Fix typo.
* elf/dl-load.c (_dl_map_object_from_fd): Likewise. 
Reported by GOTO Masanori <gotom@debian.or.jp>.
2000-09-07 09:16:34 +00:00
Andreas Jaeger
379ed35144 (charclass_charcode_ellipsis): Fix typo. Reported by dyky@kondara.org, closes PR libc/1886. 2000-09-05 07:27:46 +00:00
Ulrich Drepper
16fe0a8835 Update.
2000-09-04  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/localedef.c (construct_output_path): Correct
	computation of endp after asprintf.
	* locale/programs/locfile.c (write_locale_data): Don't add extra
	slash in filename.
2000-09-05 05:52:09 +00:00
Ulrich Drepper
5e6160ede7 (write_locale_data): Don't add extra slash in filename. 2000-09-05 05:43:04 +00:00
Andreas Jaeger
6d77214d90 Update.
* locale/programs/ld-monetary.c (monetary_read): Fix typo.
	* iconv/iconv_prog.c (options): Fix typo.
	Reported by dyky@kondara.org, closes PR libc/1885.

2000-09-04  Andreas Jaeger  <aj@suse.de>
2000-09-04 09:40:57 +00:00
Ulrich Drepper
4c7d276eb1 Update.
2000-08-31  Bruno Haible  <haible@clisp.cons.org>

	* wctype/wcfuncs.c (iswblank): New function.
	* wctype/wcfuncs_l.c (__iswblank_l): New function.
	* wctype/wcextra.c: Remove file.
	* wctype/wcextra_l.c: Remove file.
	* wctype/Makefile (distribute): Remove wcextra and wcextra_l.

2000-08-31  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-collate.c (collate_output): Remove redundant
	assert call.
	* string/strcoll.c: Likewise.
	* string/strxfrm.c: Include assert.h.  Add assert calls like in
	string/strcoll.c.

2000-08-31  Bruno Haible  <haible@clisp.cons.org>

	* locale/categories.def (_NL_COLLATE_HASH_SIZE,
	_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_NAMES, _NL_CTYPE_NAMES,
	_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS): Remove definitions.
	* locale/langinfo.h (_NL_COLLATE_HASH_SIZE, _NL_COLLATE_HASH_LAYERS,
	_NL_COLLATE_NAMES): Rename to _NL_COLLATE_GAP1/2/3 respectively.
	(_NL_CTYPE_NAMES): Rename to _NL_CTYPE_GAP3.
	(_NL_CTYPE_GAP3): Rename to _NL_CTYPE_GAP4.
	(_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS): Rename to
	_NL_CTYPE_GAP5/6 respectively.

	* locale/C-ctype.c (_nl_C_LC_CTYPE): Update.
	* ctype/ctype-info.c (__ctype_names, __ctype_width): Remove variables.
	* locale/lc-ctype.c (_nl_postload_ctype): Assume new locale format.
	Don't initialize __ctype_names and __ctype_width.
	* wctype/cname-lookup.h: Remove file.
	* wctype/Makefile (distribute): Remove cname-lookup.h.
	* wctype/wchar-lookup.h: Include stdint.h.
	* wctype/wctype.c (__wctype): Assume new locale format.
	* wctype/wctype_l.c (__wctype_l): Likewise.
	* wctype/iswctype.c: Don't include cname-lookup.h.
	(__iswctype): Assume new locale format.
	* wctype/iswctype_l.c: Don't include cname-lookup.h.
	(__iswctype_l): Assume new locale format.
	* wctype/wctrans.c: Don't include ctype.h.
	(wctrans): Assume new locale format.
	* wctype/wctrans_l.c (__wctrans_l): Likewise.
	* wctype/towctrans.c: Don't include cname-lookup.h.
	(__towctrans): Assume new locale format.
	* wctype/towctrans_l.c: Don't include cname-lookup.h.
	(__towctrans_l): Assume new locale format.
	* wctype/wcfuncs.c: Don't include ctype.h and cname-lookup.h. Include
	localeinfo.h instead.
	(__NO_WCTYPE): Remove unused macro.
	(__ctype32_b, __ctype32_toupper, __ctype32_tolower): Remove
	declarations.
	(iswalnum, iswalpha, iswcntrl, iswdigit, iswlower, iswgraph, iswprint,
	iswpunct, iswspace, iswupper, iswxdigit): Assume new locale format.
	(towlower, towupper): Likewise.
	* wctype/wcfuncs_l.c: Don't include cname-lookup.h. Include
	localeinfo.h instead.
	(__NO_WCTYPE): Remove unused macro.
	(__iswalnum_l, __iswalpha_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
	__iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
	__iswxdigit_l): Assume new locale format.
	(__towlower_l, __towupper_l): Likewise.
	* wcsmbs/wcwidth.h: Don't include cname-lookup.h.
	(__ctype32_b): Remove declaration.
	(internal_wcwidth): Assume new locale format.
	* locale/programs/ld-ctype.c (struct locale_ctype_t): Remove fields
	plane_size, plane_cnt, names, width. Rename map to map_b, rename map32
	to map32_b, rename width_3level to width.
	(ctype_output): Always create new locale format. Don't emit
	_NL_CTYPE_NAMES, _NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS any more.
	(allocate_arrays): Always create new locale format.

	* locale/C-collate.c (_nl_C_LC_COLLATE): Update.
	* locale/weightwc.h (findidx): Assume new locale format.
	* string/strcoll.c (wcscoll): Remove local variables size, layers,
	names.
	* string/strxfrm.c (wcsxfrm): Likewise.
	* posix/fnmatch_loop.c (internal_fnwmatch): Likewise. Change type of
	local variable collseq to 'const char *'.
	(SUFFIX): Don't use, don't undefine.
	* posix/fnmatch.c: Remove SUFFIX definition.
	* locale/programs/ld-collate.c (struct locale_collate_t): Remove
	fields plane_size, plane_cnt, wcheads, wcseqorder. Rename
	wcheads_3level to wcheads, rename wcseqorder_3level to wcseqorder.
	(collate_finish): Always create new locale format. Remove local
	variables min_total, act_size.
	(collate_output): Always create new locale format. Remove local
	variables table_size, names, tablewc. Rename tablewc_3level to
	tablewc.

2000-08-31  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-collate.c (obstack_int32_grow,
	obstack_int32_grow_fast): New inline functions.
	(output_weightwc, collate_output): Use them where possible.
2000-09-01 19:36:44 +00:00
Ulrich Drepper
04ea3b0fbb Update.
2000-08-27  Bruno Haible  <haible@clisp.cons.org>

	* string/strxfrm.c (strxfrm, wcsxfrm): Include <sys/param.h>.
	If nrules == 0 and srclen < n, copy only srclen + 1 characters.

	* sysdeps/generic/getdomain.c (getdomainname): Include <sys/param.h>.
	If the result is fits in the buffer, copy only as many bytes as needed.

	* sysdeps/generic/_strerror.c (__strerror_r): Don't zero-fill the
	buffer after copying numbuf into it.
	* sysdeps/mach/_strerror.c (__strerror_r): Likewise.

2000-08-27  Bruno Haible  <haible@clisp.cons.org>

	* posix/confstr.c (confstr): When string_len > len, NUL-terminate
	the result.  When string_len < len, don't clear the rest of the buffer.

2000-08-27  Bruno Haible  <haible@clisp.cons.org>

	Support for new LC_COLLATE format.
	* locale/coll-lookup.h: New file.
	* locale/weightwc.h (findidx): When size == 0, call
	collidx_table_lookup.
	* wcsmbs/wcscoll.c: Include coll-lookup.h.
	* wcsmbs/wcsxfrm.c: Likewise.
	* posix/fnmatch.c: Likewise.
	* posix/fnmatch_loop.c (internal_fnwmatch): When size == 0, call
	collseq_table_lookup.
	* locale/programs/3level.h: New file.
	* locale/programs/ld-ctype.c: (wcwidth_table, wctrans_table): Define
	by including "3level.h".
	* locale/programs/ld-collate.c (wchead_table, collidx_table,
	collseq_table): New types, defined by including "3level.h".
	(locale_collate_t): New wcheads_3level, wcseqorder_3level fields.
	(encoding_mask, encoding_byte): Remove.
	(utf8_encode): Use simple shifts instead.
	(collate_finish): When !oldstyle_tables, set plane_size and plane_cnt
	to 0, and initialize and fill wcheads_3level and wcseqorder_3level.
	(collate_output): New local variable tablewc_3level. When
	!oldstyle_tables, set table_size to 0 and names to NULL and fill
	tablewc_3level instead of tablewc. Change format of TABLEWC and
	COLLSEQWC entries written to the file.
	* locale/C-collate.c (collseqwc): Change format.
	(_nl_C_LC_COLLATE): Set HASH_SIZE and HASH_LAYERS to 0, change format
	of COLLSEQWC.
	* locale/Makefile (distribute): Add coll-lookup.h, programs/3level.h.

2000-08-27  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-ctype.c (MAX_CHARNAMES_IDX): New macro.
	(locale_ctype_t): New charnames_idx field.
	(ctype_startup): Initialize charnames_idx field.
	(find_idx): Speed up dramatically by using charnames_idx inverse table.

2000-08-27  Bruno Haible  <haible@clisp.cons.org>

	* locale/C-ctype.c: Switch to new locale format.
	(_nl_C_LC_CTYPE_names): Remove array.
	(STRUCT_CTYPE_CLASS): New macro.
	(_nl_C_LC_CTYPE_class_{upper,lower,alpha,digit,xdigit,space,print,
	graph,blank,cntrl,punct,alnum}, _nl_C_LC_CTYPE_map_{toupper,tolower}):
	New three-level tables.
	(_nl_C_LC_CTYPE_width): Change from array to three-level table.
	(_nl_C_LC_CTYPE): Fix nstrings value. Set HASH_SIZE and HASH_LAYERS
	to 0. Change WIDTH format. Set CLASS_OFFSET and MAP_OFFSET. Add
	12 class tables and 2 map tables at the end.
	* ctype/ctype-info.c (_nl_C_LC_CTYPE_names): Remove declaration.
	(_nl_C_LC_CTYPE_class_{upper,lower,alpha,digit,xdigit,space,print,
	graph,blank,cntrl,punct,alnum}, _nl_C_LC_CTYPE_map_{toupper,tolower}):
	New declarations.
	(b): Remove trailing semicolon.
	(__ctype_names, __ctype_width): Don't initialize.
	(__ctype32_wctype, __ctype32_wctrans, __ctype32_width): Initialize.

2000-08-27  Bruno Haible  <haible@clisp.cons.org>

	* elf/dl-load.c (open_path): Add a argument telling whether *dirsp
	is guaranteed to be allocated with the same malloc() and may be
	passed to free().
	(_dl_map_object): Update open_path calls. If rtld_search_dirs has
	been set to empty by an earlier open_path call, don't pass it again.
2000-08-29 01:20:23 +00:00
Ulrich Drepper
3d4ac1ec92 Update.
* locale/programs/ld-collate.c (insert_weights): Also update
	backpointer of next element.
	(collate_read): Allow definition of new collation symbols in stage 2.
	Symbol after reorder-after can be UCS4 value.
	Allow reordering of collation symbols and elements.
	Do not only move reorder entry in new position.  Instead call
	insert_weight to do this and read the weights.
2000-08-28 03:51:40 +00:00
Andreas Jaeger
0232a3ae6c Update.
2000-08-23  Andreas Jaeger  <aj@suse.de>

	* locale/programs/ld-ctype.c (ctype_read): Fix parameter for
	lr_error.
2000-08-23 16:48:51 +00:00
Ulrich Drepper
4b156cb2fd Update.
2000-08-23  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-ctype.c (ctype_read): Allow more than one
	default_missing character being specified, pick the first
	representable.
2000-08-23 08:25:46 +00:00
Ulrich Drepper
c9f79e0878 (ctype_read): Allow more than one default_missing character being specified, pick the first representable. 2000-08-23 07:44:35 +00:00
Ulrich Drepper
a6bd56c753 Update.
2000-08-14  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-ctype.c: Add support for more definitions after
	copy statement.
2000-08-14 18:58:08 +00:00
Ulrich Drepper
8a82cc3024 Update.
* locale/programs/localedef.c: Implement --prefix option to allow
	writing in standard places of alternative install directories.
2000-08-13 07:01:35 +00:00
Ulrich Drepper
d364e525a1 Update.
2000-08-08  Ulrich Drepper  <drepper@redhat.com>

	* locale/linereader.c (get_string): Don't print an error is a string
	contains an unknown character.
2000-08-08 22:43:16 +00:00
Ulrich Drepper
91933d2372 Update.
2000-08-06  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-collate.c (struct symbol_t): Add name element.
	(new_symbol): Take new parameters with name of the symbol.
	Adjust callers.
	(handle_ellipsis): Don't only allow character symbols.
	(collate_read): Allow string of collating elements contain invalid
	characters; ignore entry in this case.
	Handle ellipsis of collating symbols before first order_start.
	Allow ellipsis in state 0.
2000-08-06 17:13:27 +00:00
Ulrich Drepper
e7228df429 (handle_ellipsis): Fix typo in error message. 2000-08-04 20:27:28 +00:00
Ulrich Drepper
8fb81470d9 Update.
* gnulib/Makefile (tests): Add tst-gcc.
	* gnulib/tst-gcc.c: New file.

	* assert/Makefile (routines): Add __assert.
	* assert/Versions: Export __assert for glibc 2.2.
	* assert/__assert.c: New file.
	* assert/assert.h: Declare __assert.

2000-07-27  Bruno Haible  <haible@clisp.cons.org>

	* locale/localeinfo.h (_ISCTYPE): New macro.
	* posix/fnmatch_loop.c (internal_fnmatch): Use it, support new
	LC_CTYPE locale format.
	* locale/programs/ld-ctype.c (locale_ctype_t): New field class_b.
	(ctype_output): Output class_b[nr] right before class_3level[nr].
	(allocate_arrays): Fill class_b, similarly to class_3level.

2000-08-01  Ulrich Drepper  <drepper@redhat.com>
2000-08-02 00:09:25 +00:00
Ulrich Drepper
a9706118e0 Update.
2000-07-29  Ulrich Drepper  <drepper@redhat.com>

	* locale/langinfo.h: Add entries for extra tables in CTYPE data.
	* locale/programs/ld-ctype.c: Adjust for this.

	* locale/programs/ld-collate.c: Add more alignment checks.
	* locale/string/strcoll.c: Likewise.

2000-07-30  Mark Kettenis  <kettenis@gnu.org>

	* stdio-common/vfprintf.c: Move inclusion of _i18n_number.h
	outside USE_IN_LIBIO block.
2000-07-30 00:00:23 +00:00
Ulrich Drepper
69c69fe11d Update.
2000-07-28  Ulrich Drepper  <drepper@redhat.com>

	* stdio-common/_i18n_itoa.c: Removed.
	* stdio-common/_i18n_itoa.h: Removed.
	* stdio-common/_i18n_itowa.c: Removed.
	* stdio-common/_i18n_itowa.h: Removed.
	* stdio-common/_i18n_number.h: New file.
	* stdio-common/Depend: New file.
	* stdio-common/printf-parse.h: Handle I modifier correctly.  Optimize.
	* stdio-common/vfprintf.c: Rewrite buffer handling for integer
	printing.  Change printing of numbers with locale specific digits to
	use new code in _i18n_number.h.

	* stdio-common/bug13.c: Improve messages.

	* locale/programs/ld-ctype.c (ctype_read): Improve error message.
	(set_class_defaults): Always search also for Uxxxx names.
	Detect insufficient number of outdigits.

	* locale/Makefile (C-translit.h): Use mv not $(move-if-changed).
2000-07-29 06:45:51 +00:00
Ulrich Drepper
ec08818d20 Update.
2000-07-25  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-ctype.c (wctype_table_get): New function.
	(wcwidth_table_get): New function.
	(wcwidth_table_add): Call it.
	(wctrans_table_get): New function.
	(wctrans_table_add): Call it.
2000-07-26 06:40:20 +00:00
Ulrich Drepper
ef44614405 Update.
2000-07-23  Bruno Haible  <haible@clisp.cons.org>

	* wctype/wchar-lookup.h: New file.
	* wctype/iswctype.c: Include "wchar-lookup.h".
	(__iswctype): Support alternate locale format with 3-level tables.
	* wctype/iswctype_l.c (__iswctype_l): Likewise.
	* wctype/towctrans.c (__towctrans): Likewise.
	* wctype/towctrans_l.c (__towctrans_l): Likewise.
	* wctype/wcfuncs.c: Include "wchar-lookup.h".
	(__ctype32_wctype, __ctype32_wctrans): Declare external.
	(__iswalnum, __iswalpha, __iswcntrl, __iswdigit, __iswlower,
	__iswgraph, __iswprint, __iswpunct, __iswspace, __iswupper,
	__iswxdigit, towlower, towupper): Support alternate locale format
	with 3-level tables.
	* wctype/wcextra.c (iswblank): Likewise.
	* wctype/wcfuncs_l.c: Include "wchar-lookup.h".
	(__iswalnum_l, __iswalpha_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
	__iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
	__iswxdigit_l, __towlower_l, __towupper_l): Support alternate locale
	format with 3-level tables.
	* wctype/wcextra_l.c (__iswblank_l): Likewise.
	* wctype/wctype.c (__wctype): Likewise.  In the alternate locale
	format, return a 3-level table pointer.
	* wctype/wctype_l.c (__wctype_l): Likewise.
	* wctype/wctrans.c (wctrans): Likewise.
	* wctype/wctype.h (__ISwupper, __ISwlower, __ISwalpha, __ISwdigit,
	__ISwxdigit, __ISwspace, __ISwprint, __ISwgraph, __ISwblank,
	__ISwcntrl, __ISwpunct, __ISwalnum): New enum values.
	(iswctype): Remove macro definition.
	* wcsmbs/wcwidth.h: Include "wchar-lookup.h".
	(internal_wcwidth): Support alternate locale format with 3-level
	tables.
	* locale/langinfo.h (_NL_CTYPE_CLASS_OFFSET, _NL_CTYPE_MAP_OFFSET):
	New nl_items.
	* locale/categories.def (_NL_CTYPE_CLASS_OFFSET, _NL_CTYPE_MAP_OFFSET):
	Define them as being type "word".
	* locale/C-ctype.c (_nl_C_LC_CTYPE): Add initializers for them.
	* ctype/ctype-info.c (__ctype32_wctype, __ctype32_wctrans,
	__ctype32_width): New exported variables.
	* locale/lc-ctype.c (_nl_postload_ctype): Initialize them in the
	alternate locale format. Don't initialize __ctype_names and
	__ctype_width in the alternate locale format.
	* locale/programs/localedef.h (oldstyle_tables): New declaration.
	* locale/programs/localedef.c (oldstyle_tables): New variable.
	(OPT_OLDSTYLE): New macro.
	(options): Add --old-style option.
	(parse_opt): Handle --old-style option.
	* locale/programs/ld-ctype.c (locale_ctype_t): Add class_offset,
	map_offset, class_3level, map_3level, width_3level members.
	(ctype_output): Support for alternate locale format: Computation of
	nelems changes. _NL_CTYPE_TOUPPER32, _NL_CTYPE_TOLOWER32 and
	_NL_CTYPE_CLASS32 only 256 characters. _NL_CTYPE_NAMES empty.
	New fields _NL_CTYPE_CLASS_OFFSET, _NL_CTYPE_MAP_OFFSET. Field
	_NL_CTYPE_WIDTH now contains the three-level table. Extra elems
	now contain both class and map tables.
	(struct wctype_table): New type.
	(wctype_table_init, wctype_table_add, wctype_table_finalize): New
	functions.
	(struct wcwidth_table): New type.
	(wcwidth_table_init, wcwidth_table_add, wcwidth_table_finalize): New
	functions.
	(struct wctrans_table): New type.
	(wctrans_table_init, wctrans_table_add, wctrans_table_finalize): New
	functions.
	(allocate_arrays): Support for alternate locale format: Set
	plane_size and plane_cnt to 0. Restrict ctype->ctype32_b to the first
	256 characters. Compute ctype->class_3level. Restrict ctype->map32[idx]
	to the first 256 characters. Compute ctype->map_3level. Set
	ctype->class_offset and ctype->map_offset. Compute ctype->width_3level
	instead of ctype->width.
2000-07-25 04:37:22 +00:00
Ulrich Drepper
04fbc779fe Update.
* iconv/gconv_trans.c: Correct a few bugs in the search loop.  Remove
	remainders of hash table.
	* locale/categories.def: Remove remainders of transliteration
	hash table.
	* locale/langinfo.h: Likewise.
	* locale/programs/ld-ctype.c: Likewise.  Fix code to write out
	transliteration tables.

	* locale/gen-translit.pl: New file.
	* locale/C-translit.h.in: New file.
	* locale/C-ctype.c: Include C-translit.h.  Initialize transliteration
	data pointers with data from this file.
	* locale/Makefile (distribute): Add C-translit.h.in, C-translit.h,
	and gen-translit.pl.
	Add rule to generate C-translit.h.
2000-07-22 21:22:08 +00:00
Ulrich Drepper
c056ee48cb Update.
symbols and elements be named in reorder-after instructions.
2000-07-22 04:25:38 +00:00
Ulrich Drepper
d58c3ad021 Update.
* locale/programs/ld-collate.c (collate_read): Allow collating
	symbols be named in reorder-after instructions.
	Reported by Yoshito Kawada <KAWADA@jp.ibm.com>.
2000-07-22 03:52:21 +00:00
Ulrich Drepper
0c0c8bdeed Update.
* locale/programs/ld-collate.c (handle_ellipsis): Test for
	duplication with generated name, not the name of the first
	character.
	Patch by Yong Li <yong.li@asu.edu>.
2000-07-22 02:36:19 +00:00
Ulrich Drepper
c6df09adf2 Update.
2000-07-18  Ulrich Drepper  <drepper@redhat.com>

	* intl/Makefile: Make sure tst-translit is run after tst-gettext.

	* locale/C-ctype.c: Add initializers for gap elements.
	* locale/programs/ld-ctype.c (ctype_output): Write out index entries
	for gap elements.
2000-07-18 08:13:18 +00:00
Ulrich Drepper
89a4f6ff1f Update.
2000-07-07  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/locale.c (write_locales): Don't simply add all
	directories found in the subdir, test whether at least the
	LC_CTYPE file is in there.
2000-07-07 07:12:11 +00:00
Ulrich Drepper
f3e29a1a0f Update.
2000-07-05  Ulrich Drepper  <drepper@redhat.com>

	* locale/loadlocale.c (_nl_unload_locale): Add cast to avoid warning.

	* locale/programs/ld-collate.c (collate_output): Also write out the
	collation sequence values and the wide character string for the
	collation symbol table.

	* posix/fnmatch.c: Include "../locale/elem-hash.h".
	* posix/fnmatch_loop.c: Implement collating symbol handling.
	* posix/tst-fnmatch.input: Add more tests, especially for collating
	symbol handling.

	* posix/regex.c: Fix comment.
2000-07-05 22:02:03 +00:00
Ulrich Drepper
83b1b6d8fa Update.
2000-07-04  Ulrich Drepper  <drepper@redhat.com>

	* spinlock.c (__pthread_unlock): Properly place write barrier.
	Patch by Kaz Kylheku <kaz@ashi.footprints.net>.
2000-07-04 08:22:44 +00:00
Ulrich Drepper
4ad1d0cfbf (charmap_read): Prepend the condition filename == NULL. 2000-07-04 00:22:32 +00:00
Ulrich Drepper
7f4553513c Update.
* iconv/gconv_trans.c: Test with _NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN
	whether this information is available.

	* intl/dcigettext.c (_nl_find_msg): Correct reallocation of
	buffers in case the translation is too large.  Remember allocated
	memory blocks in a list.
	(free_mem): Free memory for translations.

	* intl/tst-gettext.c: Use correct locale.  Improve error messages.

	* locale/programs/ld-ctype.c (ctype_output): If no default_missing
	information is available set the string length to zero.
2000-07-01 00:04:28 +00:00
Ulrich Drepper
e43e0dd6b3 Update.
* locale/loadlocale.c (_nl_load_locale): Make sure all locale data
	used as words is properly aligned.
2000-06-30 05:57:47 +00:00
Ulrich Drepper
f175216dbf Update.
2000-06-29  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-ctype.c (ctype_output): Don't generate unaligned
	data files.
2000-06-30 00:11:52 +00:00
Ulrich Drepper
5295113f8f Update.
* locale/programs/ld-collate.c (insert_weights): Handle <Uxxxx>
	symbols in multi-character weights correctly.
2000-06-28 23:00:28 +00:00
Ulrich Drepper
0e16ecfa1e Update.
* locale/programs/ld-ctype.c (ctype_finish): Take all characters from
	the input charset into account when generating the hash table.
	(allocate_arrays): Correct setting default width.  Not all empty slots
	in the table are filled, only those not covert explicitly by the
	locale description and in the charset.

	* stdio-common/vfscanf.c: Make sure to always return WEOF and EOF for
	wide character version.
	For %C handling, test correct pointer variable for NULL.

	* wcsmbs/wctob.c: Handle WEOF special.

	* wcsmbs/wcwidth.h: 0xff in width array means invalid character.

	* wctype/wctype.h: Protect gcc-isms with __extension__.  Avoid
	always-true test to avoid warning.
2000-06-28 04:27:24 +00:00
Ulrich Drepper
8b682b9907 Update.
* iconvdata/gen-8bit-gap-1.sh: Update for new charmap format.
	* iconvdata/gen-8bit-gap.sh: Likewise.
	* iconvdata/gen-8bit.sh: Likewise.

	* iconv/gconv_open.c (__gconv_open): Move comment to correct position.

	* locale/programs/ld-collate.c (collate_read): Don't actually read
	the copy locale if we are ignoring the content.

	* sunrpc/xdr_rec.c (set_input_fragment): Fix PR libc/1549, patch from
	Jens Moeller <jens.moeller@waii.com>.
2000-06-26 00:26:21 +00:00
Ulrich Drepper
45a9eda2f9 Update.
* locale/programs/ld-address.c (INT_STR_ELEM): Correct test for
	unknown character.
2000-06-25 20:26:58 +00:00
Ulrich Drepper
07dab0c385 Update.
2000-06-25  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-collate.c: Correct handling of different
	collation sections.
	* locale/programs/localedef.c (add_to_readlist): Take locale pointer
	as extra parameter from which to copy category information.
	Change all callers.
	(load_locale): Likewise.
	* locale/programs/localedef.h: Update prototypes of add_to_readlist
	and load_locale.
	* locale/programs/ld-ctype.c: Update call to add_to_readlist.
	* locale/programs/locfile.h: Likewise.
	* locale/programs/locfile-kw.gperf: Add entry for script.
	* locale/programs/locfile-token.h: Add tok_script.

	* locale/programs/locale.c: Update copyright year.
	* locale/programs/localedef.c: Likewise.

	* xdr_rec.c (set_input_fragment): Fix PR libc/1549, patch from Jens
2000-06-25 18:14:28 +00:00