Commit Graph

66 Commits

Author SHA1 Message Date
Ondřej Bílka
a1ffb40e32 Use glibc_likely instead __builtin_expect. 2014-02-10 15:07:12 +01:00
Allan McRae
d4697bc93d Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
Ondřej Bílka
c0c3f78afb Fix typos. 2013-08-21 19:48:48 +02:00
Ryan S. Arnold
e054f49430 Add #include <stdint.h> for uint[32|64]_t usage (except installed headers). 2013-05-16 11:32:54 -05:00
Joseph Myers
568035b787 Update copyright notices with scripts/update-copyrights. 2013-01-02 19:05:09 +00:00
Paul Eggert
59ba27a63a Replace FSF snail mail address with URLs. 2012-02-09 23:18:22 +00:00
Ulrich Drepper
a784e50247 Remove pre-ISO C support
No more __const.
2012-01-07 23:57:22 -05:00
Ulrich Drepper
915a6c51c5 * iconv/gconv.c: Demangle pointers before use if necessary.
* iconv/gconv_cache.c: Likewise.
	* iconv/skeleton.c: Likewise.
	* libio/iofwide.c: Likewise.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs_l.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.
	* iconv_gconv_db.c: Likewise.  After init functions returns mangle
	btowc pointer if necessary.
	* iconv/gconv_dl.c: Mangle function pointers retrieved from dlsym.
2005-12-19 07:26:29 +00:00
Ulrich Drepper
dbc92dc6cb * configure.in: Compile source test file with -fPIC for -shared.
2005-09-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/unix/sysv/linux/sh/lowlevellock.S (__lll_mutex_lock_wait):
	Fix typo in register name.
2005-09-06 01:18:13 +00:00
Ulrich Drepper
45541bdf5c * iconv/skeleton.c: Eliminate DEFINE_DIRECTION_OBJECTS macro use,
it wasn't used.  Remove use of from_object and to_object variable,
	replace with some constants.  Adjust users.
2005-09-05 05:01:36 +00:00
Ulrich Drepper
a334319f65 (CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4. 2004-12-22 20:10:10 +00:00
Jakub Jelinek
0ecb606cb6 2.5-18.1 2007-07-12 18:26:36 +00:00
Ulrich Drepper
f9ad060c7a Update.
2002-11-30  Bruno Haible  <bruno@clisp.org>

	* iconv/gconv.h (__gconv_btowc_fct): New typedef.
	(struct __gconv_step): New field __btowc_fct.
	* wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
	* iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
	__BUILTIN_TRANS.
	(__gconv_btwoc_ascii): New declaration.
	* iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
	(__gconv_btwoc_ascii): New function.
	* iconv/gconv_builtin.h: Add BtowcFct argument to all
	BUILTIN_TRANSFORMATION invocations.
	* iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
	* iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
	* iconv/gconv_builtin.c (map): New field btowc_fct.
	(BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
	btowc_fct field.
	(__gconv_get_builtin_trans): Initialize __btowc_fct field.
	* iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
	* iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
	* wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
	* iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
	(gconv_init): Initialize __btowc_fct field.
	Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
	* iconv/loop.c: Document ONEBYTE_BODY.
	(gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
	Undefine ONEBYTE_BODY at the end.
	* iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
	* iconvdata/8bit-gap.c (NONNUL): New macro.
	(BODY for FROM_LOOP): Use it.
	(ONEBYTE_BODY): New macro.
	* iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
	(NONNUL): New macro.
	* iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
	* iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
	* iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
	* iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
	* iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
	* iconvdata/big5.c (ONEBYTE_BODY): New macro.
	* iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
	* iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
	* iconvdata/gbk.c (ONEBYTE_BODY): New macro.
	* iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
	* iconvdata/ibm932.c: Include <stdbool.h>.
	(TRUE, FALSE): Remove macros.
	(BODY for FROM_LOOP): Remove unused variable rp1.
	(ONEBYTE_BODY): New macro.
	(BODY for TO_LOOP): Use bool.
	* iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
	* iconvdata/ibm943.c: Include <stdbool.h>.
	(TRUE, FALSE): Remove macros.
	(BODY for FROM_LOOP): Remove unused variable rp1.
	(ONEBYTE_BODY): New macro.
	(BODY for TO_LOOP): Use bool.
	* iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
	* iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
	* iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
	* iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
	* iconvdata/johab.c (ONEBYTE_BODY): New macro.
	* iconvdata/sjis.c (ONEBYTE_BODY): New macro.
	* iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
	* iconvdata/t.61.c (ONEBYTE_BODY): New macro.
	* iconvdata/uhc.c (ONEBYTE_BODY): New macro.
	* iconvdata/gbbig5.c: Tweak comment.
2002-12-02 22:39:58 +00:00
Ulrich Drepper
faaa6f6283 Update.
2002-05-12  Bruno Haible  <bruno@clisp.org>

	* iconvdata/testdata/EUC-JISX0213: New file.
	* iconvdata/testdata/EUC-JISX0213..UTF8: New file.
	* iconvdata/testdata/SHIFT_JISX0213: New file.
	* iconvdata/testdata/SHIFT_JISX0213..UTF8: New file.
	* iconvdata/testdata/ISO-2022-JP-3: New file.
	* iconvdata/testdata/ISO-2022-JP-3..UTF8: New file.
	* iconvdata/TESTS: Add EUC-JISX0213, SHIFT_JISX0213, ISO-2022-JP-3.
	* iconvdata/run-iconv-test.sh: Skip the charmap test if the charmap
	contains comments indicating precomposed characters.

2002-04-21  Bruno Haible  <bruno@clisp.org>

	* iconvdata/iso-2022-jp-3.c: New file.
	* iconvdata/gconv-modules (ISO-2022-JP-3): New module.
	* iconvdata/Makefile (modules): Add ISO-2022-JP-3.
	(LDFLAGS-ISO-2022-JP-3.so): New variable.
	(ISO-2022-JP-3.so): Depend on libJIS.so and libJISX0213.so.
	(distribute): Add iso-2022-jp-3.c.

2002-05-12  Bruno Haible  <bruno@clisp.org>

	* iconvdata/tst-table-to.c (main): Restore handling of
	transliterations, broken by last patch.

2002-05-12  Bruno Haible  <bruno@clisp.org>

	* iconvdata/TESTS: Add IBM922, IBM1124, IBM1129.

2002-05-12  Bruno Haible  <bruno@clisp.org>

	* iconvdata/euc-jisx0213.c (BODY for FROM_LOOP): Don't advance inptr
	when there is not enough room in the output buffer.
	* iconvdata/shift_jisx0213.c (BODY for FROM_LOOP): Likewise.

2002-04-20  Bruno Haible  <bruno@clisp.org>

	* iconv/skeleton.c ({FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}): New
	macros.
	(RESET_INPUT_BUFFER): Use them instead of {MIN,MAX}_NEEDED_{FROM,TO}.
	Also make this macro work if FROM_DIRECTION evaluates to 0.
	(gconv_init): Use the new macros instead of {MIN,MAX}_NEEDED_{FROM,TO}.
	(FUNCTION_NAME): Likewise, in the handling of unaligned accesses and
	of consume_incomplete.
	* iconvdata/cp1255.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
	instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to
	4, not 8.
	* iconvdata/cp1258.c: Likewise.
	* iconvdata/ibm930.c: Define {FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO}
	instead of {MIN,MAX}_NEEDED_{FROM,TO}. Set TO_LOOP_MAX_NEEDED_TO to 3,
	not 2.
	* iconvdata/ibm933.c: Likewise.
	* iconvdata/ibm935.c: Likewise.
	* iconvdata/ibm937.c: Likewise.
	* iconvdata/ibm939.c: Likewise.
	* iconvdata/iso-2022-cn.c: Define
	{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
	{MIN,MAX}_NEEDED_{FROM,TO}. Set TO_LOOP_MAX_NEEDED_TO to 6, not 4.
	* iconvdata/iso-2022-cn-ext.c: Likewise.
	* iconvdata/iso-2022-jp.c: Define
	{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
	{MIN,MAX}_NEEDED_{FROM,TO}.
	* iconvdata/tcvn5712-1.c: Define
	{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
	{MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_FROM to 1, not 2.
	* iconvdata/euc-jisx0213.c: Define
	{FROM,TO}_LOOP_{MIN,MAX}_NEEDED_{FROM,TO} instead of
	{MIN,MAX}_NEEDED_{FROM,TO}. Set FROM_LOOP_MAX_NEEDED_TO to 8, not 4.
	* iconvdata/shift_jisx0213.c: Likewise.

2002-05-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>

	* sysdeps/powerpc/Makefile (sysdeps_routines): Add divdi3, cmpdi2,
	shdi3, fixdfdi, fixsfdi in csu dir.
	(shared-only-routines): Likewise.
	* sysdeps/wordsize-32/cmpdi2.c: New file.
	* sysdeps/wordsize-32/shdi3.c: New file.
	* sysdeps/wordsize-32/fixdfdi.c: New file.
	* sysdeps/wordsize-32/fixsfdi.c: New file.
	* sysdeps/powerpc/Versions (__divdi3, __moddi3, __udivdi3, __umoddi3,
	__ashldi3, __ashrdi3, __lshrdi3, __cmpdi2, __ucmpdi2, __fixdfdi,
	__fixsfdi, __fixunsdfdi, __fixunssfdi): Export at GLIBC_2.0.

	* sysdeps/unix/sysv/linux/semctl.c (__old_semctl, __new_semctl):
	Only use va_arg if the argument will be used [PR libc/3259].

2002-05-06  Michael A. Schmidt  <mmaass@us.ibm.com>

	* catgets/catgets.c (catopen): Free buffer if internal catalog
	open fails.

2002-05-14  Ulrich Drepper  <drepper@redhat.com>

	* debug/xtrace.sh: Make more robust.  For realtime tracking use
	non-buffering methods.
	* debug/pcprofiledump.c: Implement -u option.
	Patch by Roger Luethi <rl@hellgate.ch>.
2002-05-15 06:02:35 +00:00
Ulrich Drepper
b459976e27 Update.
* iconv/skeleton.c (RESET_INPUT_BUFFER): Replace ifs with #ifs to
	avoid compiler warnings.

	* locale/programs/localedef.c (main): Always call
	construct_output_path.
2002-04-19 00:37:44 +00:00
Andreas Jaeger
41bdb6e20c Update to LGPL v2.1.
2001-07-06  Paul Eggert  <eggert@twinsun.com>

	* manual/argp.texi: Remove ignored LGPL copyright notice; it's
	not appropriate for documentation anyway.
	* manual/libc-texinfo.sh: "Library General Public License" ->
	"Lesser General Public License".

2001-07-06  Andreas Jaeger  <aj@suse.de>

	* All files under GPL/LGPL version 2: Place under LGPL version
	2.1.
2001-07-06 04:58:11 +00:00
Ulrich Drepper
2373b30ea8 Update.
2001-05-20  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/cp1255.c: Completely rewritten.
	* iconvdata/Makefile (gen-8bit-gap-modules): Remove cp1255.
	* iconvdata/testdata/WINDOWS-1255: New file.
	* iconvdata/testdata/WINDOWS-1255..UTF8: New file.
	* iconvdata/TESTS: Add WINDOWS-1255 test.
	* iconvdata/CP1255.irreversible: New file.

2001-05-20  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/cp1258.c: Completely rewritten.
	* iconvdata/Makefile (gen-8bit-gap-modules): Remove cp1258.
	* iconvdata/testdata/WINDOWS-1258: New file.
	* iconvdata/testdata/WINDOWS-1258..UTF8: New file.
	* iconvdata/TESTS: Add WINDOWS-1258 test.
	* iconvdata/tst-table-from.c (try): Reset the iconv descriptor before
	the main call, and flush it afterwards.
	(utf8_decode): Return a string, possibly containing several Unicode
	characters.
	(main): Update all utf8_decode calls.
	* iconvdata/CP1258.irreversible: New file.

2001-05-20  Bruno Haible  <haible@clisp.cons.org>

	* iconv/gconv.c (__gconv): For flush without output, pass do_flush = 2.
	* iconv/skeleton.c: Distinguish do_flush = 1 and do_flush = 2. In the
	first case, set outbuf, outstart, outend, and call PREPARE_LOOP before
	EMIT_SHIFT_TO_INIT; then pass the output produced by this step down to
	the next step. In the second case, clear the state without calling
	EMIT_SHIFT_TO_INIT.
	* iconvdata/ibm930.c (EMIT_SHIFT_TO_INIT): Use outbuf instead of
	data->__outbuf, and outend instead of data->__outbufend.
	* iconvdata/ibm933.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/ibm935.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/ibm937.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/ibm939.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-cn.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-cn-ext.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-jp.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/iso-2022-kr.c (EMIT_SHIFT_TO_INIT): Likewise.
	* iconvdata/utf-7.c (EMIT_SHIFT_TO_INIT): Likewise.

2001-05-21  Jakub Jelinek  <jakub@redhat.com>

	* elf/rtld.c (dl_main): Compute l_map_end for the main program.
	* elf/dl-sym.c (_dl_sym): Don't check for l_addr == 0.
	If match == _dl_loaded, caller can still come from the main program.
	(_dl_vsym): Likewise.
	* elf/dl-open.c (dl_open_worker): Don't check for l_addr == 0.
	* elf/dl-error.c (_dl_signal_error): Change NULL objname into "".
	* elf/restest2.c: New test.
	* elf/Makefile (tests): Add restest2.
	(restest2, LDFLAGS-restest2): Add rules.
2001-05-22 22:30:18 +00:00
Ulrich Drepper
f1813b562b Update.
2001-01-06  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c: Reset outbuf for next round of the loop.
	Reported by Owen Taylor <otaylor@redhat.com>.
	* iconv/Makefile (tests): Add tst-iconv3.
	* iconv/tst-iconv3.c: New file.

	* iconvdata/ibm930.c: Fix handling of state.  Optimize a bit.
	* iconvdata/ibm933.c: Likewise.
	* iconvdata/ibm935.c: Likewise.
	* iconvdata/ibm937.c: Likewise.
	* iconvdata/ibm939.c: Likewise.
	* iconvdata/ibm930.h: Adjust single byte table for optimization.
	* iconvdata/ibm933.h: Likewise.
	* iconvdata/ibm935.h: Likewise.
	* iconvdata/ibm939.h: Likewise.

	* iconvdata/testdata/IBM930: Add misssing SI.
	* iconvdata/testdata/IBM933: Likewise.
	* iconvdata/testdata/IBM935: Likewise.
	* iconvdata/testdata/IBM937: Likewise.
	* iconvdata/testdata/IBM939: Likewise.

	* configure.in: Check for old add-ons that shouldn't be used with
	current glibc anymore.
2001-01-06 20:21:33 +00:00
Ulrich Drepper
8c0b717095 Update.
* test-skeleton.c: Mark timeout_handler with noreturn.
	* iconv/skeleton.c (get16u): Add const to cast.
	(get32u): Likewise.
	* iconvdata/gb18030.c: Likewise.
	* iconvdata/iso-2022-cn-ext.c: Likewise.
	* iconvdata/ansi_x3.110.c: Add cast to avoid warning.
	* iconvdata/big5.c: Likewise.
	* iconvdata/big5hkscs.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/iso646.c: Add prototypes for gconv_init and gconv_env.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.
	* iconvdata/cns11643.h (ucs4_to_cns11643): Define needed as size_t.
	* iconv/gconv_trans.c (__gconv_translit_find): Avoid one warning
	with little code shuffling.
2000-11-28 07:10:56 +00:00
Ulrich Drepper
a1620a4c55 Update.
2000-11-27  Ulrich Drepper  <drepper@redhat.com>

	* iconv/gconv.h (__gconv_info): Define __data element using __flexarr.
	* misc/sys/cdefs.h: Define __flexarr.
	Proposed by Joseph S. Myers <jsm28@cam.ac.uk>.

	* iconvdata/iso-2022-jp.c: Add prototypes to avoid warnings.
	* iconv/skeleton.c: Likewise.
	* iconvdata/iso8859-1.c (BODY to 8859-1): Add const to cast.
	* iconv/loop.c (get16): Add const to cast.
	(get32): Likewise.
2000-11-27 17:54:38 +00:00
Ulrich Drepper
17427edd1f Update.
2000-11-20  Ulrich Drepper  <drepper@redhat.com>

	* csu/gmon-start.c: Always have prototype for __gmon_start.
	* csu/version.c: Add prototypes for __libc_print_version and
	__libc_main.
	* iconv/gconv.c: Include gconv_int.h and gconv.h.
	* iconv/gconv.h (struct __gconv_step): Remove const from __from_name
	and __to_name.
	* iconv/gconv_builtin.h: Add ASCII module definitions.
	* iconv/gconv_conf.c (__gconv_path_elem): Remove const.
	(add_module): Add cast to avoid warning.  Rework construction of
	strings for new module.
	* iconv/gconv_db.c (__gconv_alias_compare): Make s1 and s2 const.
	(derivation_compare): Likewise.
	* iconv/gconv_dl.c (do_release_shlib): Remove const from nodep.
	(__gconv_release_shlib): Cast do_release_shlib as parameter for twalk.
	* iconv/gconv_int.h (__gconv_path_elem): Remove const.
	(struct gconv_alias): Remove const from fromname and toname.
	* iconv/gconv_simple.c: Include gconv_builtin.h to get prototypes
	for loop functions.
	(internal_ucs4_loop): Use correct const-ness.
	(ucs4_internal_loop): Likewise.
	(internal_ucs4le_loop): Likewise.
	(ucs4le_internal_loop_single): Likewise.
	* iconv/gconv_trans.c (__gconv_transliterate): Make from_idx, from_tbl,
	to_idx, to_tbl, winbuf, winbufend const.  Change casts in
	assignments appropriately.
	(struct known_trans): Remove const from fname.
	(trans_compare): Make s1 and s2 const.
	* iconv/loop.c (LOOPFC): Make outend parameter const.  Add cast to
	avoid warning.
	* iconv/skeleton.c: Remove cast in calls of loop functions.
	* iconvdata/gconv-modules: Remove US-ASCII definitions.
	* iconvdata/iso646.c: Remove US_ASCII support.
	* include/set-hooks.h (DEFINE_HOOK): Also generate prototype.
	* include/unistd.h: Add __libc_check_standard_fds prototype.
	* string/bits/string2.h (__mempcpy_args): Add const to casts.
	* sysdeps/generic/initfini.c: Add prototypes for dummy, _init, and
	_fini.
	* sysdeps/generic/libc-start.c: Add prototype for __libc_start_main.
	* sysdeps/i386/i486/bits/string.h (strcmp): Add const to casts.
	* sysdeps/unix/sysv/linux/dl-osinfo.h (dl_fatal): Add cast to avoid
	warning.
	* sysdeps/unix/sysv/linux/init-first.c: Add prototypes for
	__libc_init_first and _dl_start.

	* sysdeps/unix/sysv/linux/mips/clone.S: Fix comments.
2000-11-20 09:16:41 +00:00
Ulrich Drepper
d170066550 Update.
2000-09-11  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c: Fix last patch, add missing parameter to
	unaligned function call.
2000-09-11 22:44:49 +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
b572c2da31 Update.
2000-08-25  Ulrich Drepper  <drepper@redhat.com>

	* locales/i18n (default_missing): Change back to only U003F.
2000-08-25 22:13:09 +00:00
Ulrich Drepper
777e222ddb Update.
* Makefile (do-tst-ctype): Add do-tst-mbswcs to list of dependencies.
	(TEST_MBWC_ENV): Remove unnecessary slash.
	* tst-ctype.sh: Add de_DE.UTF-8 to list of tested locales.

	* tests-mbwc/dat_iswalnum.c (TST_ISW_LOC): Correct UTF-8 input data.

	* Makefile: Add do-tst-mbswcs to dependencies of locale test suite
	tests.
2000-06-28 21:38:03 +00:00
Ulrich Drepper
d620426811 Update.
2000-06-19  Ulrich Drepper  <drepper@redhat.com>

	* iconv/gconv.h (__gconv_trans_fct): Add new parameter.
	General namespace cleanup.
	(struct __gconv_trans_data): Add next field.
	(struct __gconv_step_data): Make __trans a pointer.
	* iconv/gconv_conf.c: Split out code to find gconv directories from
	__gconv_read_conf in new functions.
	* iconv/gconv_int.h: Define new data structure and declare new
	functions for handling of gconv directory list.
	* iconv/gconv_open.c: Allow more than one error handling step being
	used.  Call function to load error handling module if it is none
	of the builtin transformations.
	* iconv/gconv_close.c: Add code to free transliteration data.
	* iconv/gconv_trans.c: Add functions to load and unload modules
	implementing transliteration etc.
	* iconv/skeleton.c: Call all context functions now that more than
	one module is allowed.
	* iconv/loop.c (STANDARD_ERR_HANDLING): New macro.
	* iconv/gconv_simple.c: Use STANDARD_ERR_HANDLING macro for places
	where the full error handling using transliteration is needed.
	* iconvdata/8bit-gap.c: Likewise.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/big5hkscs.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/euc-tw.c: Likewise.
	* iconvdata/gbgbk.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.
	* libio/iofwide.c: Reset __trans member of __gconv_trans_data
	structure correctly after last change.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.

	* localedata/Makefile: Set -Wno-format for some files since gcc does
	not know all the format specifiers.

2000-06-18  Ulrich Drepper  <drepper@redhat.com>

	* locale/loadlocale.c (_nl_unload_locale): Remove a bit of
	unneeded code.
	* locale/lc-time.c (_nl_init_era_entries): Likewise.
2000-06-19 21:12:06 +00:00
Ulrich Drepper
f1d5c60dde Update.
2000-06-15  Ulrich Drepper  <drepper@redhat.com>

	* iconv/gconv.h (__gconv_fct): Change type of fifth parameter to
	unsigned char **.
	(__gconv_init_fct): Remove two parameters.
	* iconv/gconv_int.h (__gconv_transliterate): Renamed from
	gconv_transliterate.  Remove two parameters.
	Change prototypes of builtin functions according to __gconv_fct change.
	* iconv/skeleton.c: Change type of fifth parameter.  make sure it is
	!= NULL only during error handling.  Stop in this case after the
	conversion.
	* iconv/gconv_trans.c: Replace with real implementation for
	__gconv_transliterate.
	* iconv/gconv_open.c: Adjust for renaming of __gconv_transliterate.
	* iconv/gconv.c: Change calls to downstream functions once again.
	Use NULL for the fifth parameter instead of pointer to output buffer.
	* libio/iofwide.c: Likewise.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.
	* iconv/gconv_simple.c: Remove two parameters from error handling
	function call.
	* iconvdata/8bit-gap.c: Likewise.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/big5hkscs.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/euc-tw.c: Likewise.
	* iconvdata/gbgbk.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.
2000-06-16 00:39:38 +00:00
Ulrich Drepper
4d37e19c34 Update.
2000-06-12  Ulrich Drepper  <drepper@redhat.com>

	* iconv/gconv.h (__gconv_trans_context_fct): Remove two
	parameters.
	* iconv/skeleton.c (FUNCTION_NAME): Call __trans_context_fct if it
	exists.
2000-06-12 22:31:34 +00:00
Ulrich Drepper
55985355ad Update.
2000-06-12  Ulrich Drepper  <drepper@redhat.com>

	* Rules (%.out): Define GCONV_PATH in the environment.
	* assert/Depend: New file.
	* iconvdata/Depend: New file.
	* intl/Depend: New file.
	* timezone/Makefile (build-testdata): Add GCONV_PATH to environment.
	* intl/tst-gettext.sh: Likewise.
	* iconv/Makefile (routines): Add gconv_trans.
	* iconv/gconv_trans.c: New file.
	* iconv/gconv.h (struct __gconv_trans_data): New type.
	(__gconv_fct): New parameter with starting position in output buffer.
	(__gconv_trans_fct, __gconv_trans_context_fct, __gconv_trans_query_fct,
	__gconv_trans_init_fct, __gconv_trans_end_fct): New types.
	(struct __gconv_step): Add new member __trans.
	* iconv/gconv_int.h: Pretty print prototypes.
	(gconv_transliterate): New prototype.
	(__BUILTIN_TRANS): Update for new conversion function interface.
	* iconv/gconv.c (__gconv): Pass new parameter to conversion function.
	* iconv/gconv_open.c (__gconv_open): Recognize error handling suffix
	in names, find appropriate function, and install in the conversion
	steps it can be used.
	* iconv/skeleton.c: Add additional parameter for beginning of output
	buffer.  Change calls of downstream functions.
	* iconv/loop.c: Change loop function interface completely.  Pass in
	step and step_data structure.  Remove optimization for BODY with
	NEED_LENGTH_TEST == 0.
	* iconv/gconv_simple.c: Update interfaces of functions.  Insert
	appropriate error handling code to use transliteration steps.  Remove
	optimization for BODY with NEED_LENGTH_TEST == 0.
	* iconvdata/8bit-gap.c: Likewise.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/big5hkscs.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/euc-tw.c: Likewise.
	* iconvdata/gbgbk.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.
	* libio/iofwide.c: Adjust to new interface of gconv functions.  Use
	DL_CALL_FCT.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.
2000-06-12 19:47:50 +00:00
Ulrich Drepper
38677aced0 Update.
* iconv/skeleton.c:  Rename converted written to correcter name
	irreversible.
	* iconv/gconv.c: Rename converted variable to correcter name
	irreversible.
	* iconv/gconv_int.h: Likewise.
	* iconv/gconv_simple.c: Likewise.
	* iconv/iconv.c: Likewise.
	* iconv/loop.c: Likewise.
	* iconvdata/8bit-gap.c: Likewise.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/big5hkscs.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/gbgbk.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.
2000-06-10 22:54:47 +00:00
Ulrich Drepper
365afefc6b Update.
* iconv/gconv_dl.c: Add __builtin_expect in many places.
	* iconv/skeleton.c: Add more __builtin_expect.
	* iconv/gconv_simple.c: Add __builtin_expect in many places.
2000-06-06 05:02:18 +00:00
Ulrich Drepper
85830c4c46 Update.
* iconv/gconv.h (__GCONV_IS_LAST, __GCONV_IGNORE_ERRORS): Define.
	(struct __gconv_step_data): Rename __is_last to __flags.
	* iconv/gconv_close.c: Change all uses of __is_last.
	* iconv/skeleton.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconv/gconv_open.c: Likewise.  Avoid unneeded initializations.
	Recognize IGNORE error handling, set flag, and remove from name.
	* iconv/loop.c (ignore_errors_p): Define.
	Add flags parameter to both functions.
	* iconv/skeleton.c: Pass flags to all conversion functions.
	* iconv/gconv_simple.c: Add flags parameter to all functions.
	Don't return error for invald error if ignore flag is set.
	(ucs4_internal_loop_single): Add missing pointer increment.
	(internal_ucs4le_loop_single): Likewise.
	* iconv/iconv_prog.c: Implement handling of -c parameter.
	* iconvdata/8bit-gap.c: Don't return error for invald error if
	ignore flag is set.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/big5hkscs.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/gbgbk.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.
	* libio/fileops.c: Likewise.
	* libio/iofwide.c: Likewise.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.

	* iconvdata/ksc5601.h (ksc5601_to_ucs4): Undo *s change in all cases of
2000-06-06 03:16:30 +00:00
Ulrich Drepper
978ce92b89 Update.
2000-04-20  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c: Add some more __builtin_expect.
	* iconv/loop.c: Likewise.
2000-04-21 05:02:54 +00:00
Ulrich Drepper
fd1b5c0fb6 Update.
2000-04-09  Ulrich Drepper  <drepper@redhat.com>

	Implement handling of restartable conversion functions according to
	ISO C.
	* iconv/gconv.h (__gconv_fct): Add additional parameter.
	* iconv/gconv_int.h (__BUILTIN_TRANS): Likewise.
	* iconv/gconv.c: Pass additional parameter to conversion function.
	* iconv/gconv_simple.c (internal_ucs4_loop_single): New function.
	(internal_ucs4le_loop_single): New function.
	(__gconv_transform_ascii_internal): Define ONE_DIRECTION.
	(__gconv_transform_internal_ascii): Likewise.
	(__gconv_transform_internal_utf8): Likewise.
	(__gconv_transform_utf8_internal): Likewise.
	(__gconv_transform_ucs2_internal): Likewise.
	(__gconv_transform_internal_ucs2): Likewise.
	(__gconv_transform_ucs2reverse_internal): Likewise.
	(__gconv_transform_internal_ucs2reverse): Likewise.
	(internal_ucs4le_loop_unaligned): Before return
	__GCONV_INCOMPLETE_INPUT check that the remaining bytes really form
	a valid character.  Otherwise return __GCONV_ILLEGAL_INPUT.
	(__gconv_transform_utf8_internal): Define STORE_REST and UNPACK_BYTES.
	* iconv/loop.c: Fit in definition of function to convert one character
	for processing of left-over bytes from the state object.
	* iconv/skeleton.c (gconv): Rename inbuf to inptrp and inbufend to
	inend to match names in loop functions.
	(RESET_INPUT_BUFFER): Change apprpriately.
	(gconv): If needed, call function to process bytes from the state
	object.  Similar at the end: store left over bytes if input is
	incomplete.
	Take extra argument and add new argument to all calls of the
	conversion function.
	* iconvdata/iso-2022-cn.c: Adjust numeric values used to store
	information in the state object to not conflict with length count.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/unicode.c: Adjust for change change in parameters of
	skeleton function.
	* iconvdata/utf-16.c: Likewise.
	* libio/iofwide.c: Add new parameter to all calls of conversion
	function.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.

	* iconvdata/gbgbk.c: Always define MAX_NEEDED_OUTPUT and
	MAX_NEEDED_INPUT.
2000-04-09 17:43:29 +00:00
Ulrich Drepper
a1303dc8dc Update.
2000-04-05  Cristian Gafton  <gafton@redhat.com>

	* ctype/ctype.h (__isctype_l): Define even if not __OPTIMIZE__
	because it is used in generic code.
	* wctype/wctrans.c: Define __ctype32_toupper and __ctype32_tolower.
	* wcsmbs/wcwidth.h: Declare __ctype32_b.
	* intl/gettext.c: Include <locale.h>.
	* intl/ngettext.c: Likewise.

2000-04-05  Jakub Jelinek  <jakub@redhat.com>

	* resolv/inet_ntop.c (inet_ntop4, inet_ntop6, inet_ntop): Use
	socklen_t type for size.
	* sysdeps/sparc/sparc32/dl-machine.h (RTLD_START): Rewrite for new
	init function interface.
	* sysdeps/sparc/sparc64/dl-machine.h (RTLD_START): Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Don't include
	sys/ucontext.h.
	(__jmp_buf): Declare the whole type structure here, don't use
	ucontext.

	* iconv/skeleton.c (put16u): Fix typo.
	Reported by Bruno Haible <haible@ilog.fr>.
2000-04-06 05:04:50 +00:00
Ulrich Drepper
3aaad0b638 Update.
2000-04-04  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c (FUNCTION_NAME): Reorder initialization of
	unaligned so that it compiles for system which need unaligned
	access handling.
2000-04-04 21:16:13 +00:00
Ulrich Drepper
c1db8b0ddf Update.
* iconv/skeleton.c: Define access macros with u suffix.  Adjust
	#if expression for use of unaligned function to the one used in
	the definition of these functions.
	* iconv/gconv_simple.c (internal_ucs4_loop_unaligned): New function.
	(internal_ucs4le_loop_unaligned): New function.

	    Ralf Baechle <ralf@uni-koblenz.de>
2000-03-31 20:44:49 +00:00
Ulrich Drepper
7f4e0e5886 Update.
2000-03-30  Andreas Jaeger  <aj@suse.de>

	* misc/sys/cdefs.h: Remove K&R support.
2000-03-31 04:17:54 +00:00
Ulrich Drepper
fdf6455589 Update.
2000-03-30  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c: Avoid compiling unaligned versions in some
	with size of dynamic sectionmore cases.
	* iconv/loop.c: Likewise.
2000-03-31 04:10:36 +00:00
Ulrich Drepper
cb2c55018f (put16): Remove __const. Fix access index. (put32): Remove __const. Use uint32_t instead of uint16_t. 2000-03-31 03:43:13 +00:00
Ulrich Drepper
77e1d15a1a Update.
2000-03-28  Ulrich Drepper  <drepper@redhat.com>

	* iconvdata/TESTS: Use UCS-2BE instead of UCS2.

	* iconv/loop.c: Define get16, get32, put16, and put32 macros to
	allow as well reading from/writing to unaligned addresses on machines
	which don't support this in hardware.  Use FCTNAME macro to define
	function name.  Include the file a second time for platforms which
	need special unaligned handling.
	* iconv/skeleton.c: Define get16u, get32u, put16u, and put32u macros
	to access potentially unaligned addresses.  These macros are intended
	to be used only outside the loops.
	(unaligned): New definition.  In case the machine can handle unaligned
	access define as zero.  Otherwise as a variable which is initialized
	as nonzero in case the buffer passed in at runtime is unaligned with
	respect to the character set encoding involved.
	Call aligned or unaligned looop functions according to unaligned
	variable.
	* iconvdata/8bit-gap.c: Use get16, get32, put16, and put32 instead
	of direct casting pointer to potentially handle unaligned memory
	accesses.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/euc-tw.c: Likewise.
	* iconvdata/gbk.c: Likewise.
	* iconvdata/iso-2022-cn.c: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* iconvdata/unicode.c: Likewise.
	* iconvdata/utf-16.c: Likewise.

	* locale/programs/simple-hash.c: Little optimizations.  Remove K&R
	prototypes.

	* malloc/Versions [libc] (GLIBC_2.2): Add mcheck_check_all.
	* malloc/mcheck.c (mcheck_check_all): Renamed from check_all and made
	public.
	* malloc/mcheck.h (mcheck_check_all): Declare.

	* stdio-common/Makefile (tests): Add tst-obprintf.
2000-03-28 17:33:37 +00:00
Ulrich Drepper
0aece08ded Update.
2000-03-14  Ulrich Drepper  <drepper@redhat.com>

	* iconv/skeleton.c: Increment __invocation_counter in inner loop
	since modules depend on it counting the number of times the conversion
	function got called.

	* iconv/gconv_open.c: Optimize loop to setup step data structure.

	* iconv/gconv.h: Pretty print.

2000-03-04  Ulrich Drepper  <drepper@redhat.com>

	* posix/wordexp-test.c: Correct one of the tests added in the last
	change.  Really get the root passwd entry to check again ~root.
2000-03-14 09:11:00 +00:00
Ulrich Drepper
a808d541c6 Update.
2000-02-28  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/start.c: Initialize __errno and add comment
	explaining why.  Remove K&R compatibility.

	* sysdeps/powerpc/fpu/s_isnan.c: Avoid using asm statement to
	declare aliases.

	* sysdeps/powerpc/Makefile: Always pass flags to compile for ppc
	and not rs6000.
	[$(subdir)=misc] (sysdep_routines): Add gprsave0, gprrest0,
	gprsave1 , and gprrest1.
	Don't pass special flags to compiler for init and gmon-start if
	this is no ELF platform.

	* sysdeps/mach/hurd/bits/statfs.h: Define _STATFS_F_NAMELEN.
	* sysdeps/unix/sysv/linux/bits/statfs.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/statfs.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/statfs.h: Likewise.
	* sysdeps/posix/fpathconf.c: Don't unconditionally use f_namelen
	in statfs.  Check feature macro and use f_name_max or NAME_MAX
	instead.
	* sysdeps/posix/pathconf.c: Likewise.

	* dlfcn/dlfcn.h: Remove DL_CALL_FCT definition here.
	* sysdeps/generic/bits/dlfcn.h: Define DL_CALL_FCT here.
	* sysdeps/mips/bits/dlfcn.h: Define DL_CALL_FCT here.
	* iconv/skeleton.c: If DL_CALL_FCT is not yet defined, add dumy
	definition here.

	* sysdeps/generic/libc-start.c: Fix typo in comment.

	* include/set-hooks.h: Allow systems to not define
	symbol_set_define.

	* configure.in: Unify machine names rs6000 and powerpc.
2000-02-28 21:16:38 +00:00
Ulrich Drepper
7cdd956e1c Update.
2000-02-13  Ulrich Drepper  <drepper@redhat.com>

	* iconvdata/Makefile (modules): Add UTF-16.
	(distribute): Add utf-16.c.
	* iconvdata/gconv-modules: Add entries for UTF-16, UTF-16BE, and
	UTF-16LE.
	* iconvdata/utf-16.c: New file.
	* iconv/gconv_builtin.h: Remove UTF-16 entries here.
	* iconv/gconv_simple.c: Remove conversion functions to and from UTF-16.

	* iconv/skeleton.c: Increment __invocation_coounter after every call
	to the loops.
2000-02-13 19:00:53 +00:00
Ulrich Drepper
63e04088bf Update.
2000-01-18  Ulrich Drepper  <drepper@cygnus.com>

	* iconv/loop.c (COUNT_CONVERTED): Remove macro, comment, and all uses.
	Remove done variable and all uses.
	* iconv/skeleton.c: Update comment for *written modification.
	* iconv/gconv_int.h (__gconv): Update comment.
2000-01-19 03:21:41 +00:00
Ulrich Drepper
8ce2c9e673 It's __is_last, not is_last. 1999-11-24 03:15:24 +00:00
Ulrich Drepper
aaa8d85c28 Update.
1999-11-23  Thorsten Kukuk  <kukuk@suse.de>

	* iconv/skeleton.c: Don't access next_step->fct if datat->is_last
	is true.

1999-11-23  Andreas Jaeger  <aj@suse.de>

	* include/sys/select.h: Remove K&R compatibility.
	* include/sys/statfs.h: Likewise.
	* include/gnu/libc-version.h: Likewise.
	* include/db_185.h: Likewise.
	* include/dlfcn.h: Likewise.
	* include/search.h: Likewise.
	* include/setjmp.h: Likewise.
	* include/signal.h: Likewise.
	* include/stdio.h: Likewise.
	* include/unistd.h: Likewise.
1999-11-23 17:31:31 +00:00
Ulrich Drepper
94e365c612 Update.
* sysdeps/gnu/Makefile (libdl-routines): Add eval.

1999-07-06  Zack Weinberg  <zack@rabi.columbia.edu>

	* dlfcn: New directory.  Move the following files from elf:
	dladdr.c, dlclose.c, dlerror.c, dlfcn.h, dlopen.c,
	dlopenold.c, dlsym.c, dlvsym.c.
	* dlfcn/Makefile: New file.
	* dlfcn/Versions: New file.
	* dlfcn/dlsym.c: All ELF-specific code split out to new
	function _dl_sym.
	* dlfcn/dlvsym.c: All ELF-specific code split out to new
	function _dl_vsym.
	* elf/dl-sym.c: New file.  _dl_sym and _dl_vsym are
	implemented here.

	* dlfcn/dladdr.c: Remove all references to ELF data structures
	or headers.
	* dlfcn/dlclose.c: Likewise.
	* dlfcn/dlerror.c: Likewise.
	* dlfcn/dlopen.c: Likewise.
	* dlfcn/dlopenold.c: Likewise.

	* Makeconfig (dlfcn): New variable - set to `dlfcn' if elf is
	yes, empty otherwise.
	(libdl): Set to dlfcn/libdl.so or libdl.a if elf is yes,
	depending on build-shared.
	(subdirs): Add $(dlfcn).
	(rpath-dirs): Add dlfcn.
	* elf/Makefile: Remove all references to libdl or its
	components, except the ones relating to the test cases.
	(routines): Add dl-sym.
	* elf/Versions (libc): Add _dl_sym and _dl_vsym for GLIBC_2.2.
	(libdl): Delete.

	* elf/dl-close.c (_dl_close): Change argument to void *.
	* elf/dl-open.c (_dl_open): Change return type to void *.
	* elf/eval.c: Removed.
	* elf/ldsodefs.h: Move prototypes of _dl_catch_error,
	_dlerror_run, _dl_open, _dl_close, _dl_addr, and
	_dl_mcount_wrapper_check to include/dlfcn.h.  Delete
	_CALL_DL_FCT macro.
	* include/dlfcn.h: Also prototype _dl_sym and _dl_vsym here.
	Include real header from dlfcn directory.
	* include/ldsodefs.h: Removed.

	* grp/initgroups.c: Use DL_CALL_FCT not _CALL_DL_FCT.
	* nss/getXXbyYY_r.c: Likewise.
	* nss/getXXent_r.c: Likewise.
	* iconv/gconv.c: Likewise.  Don't include ldsodefs.h.
	* iconv/gconv_db.c: Likewise.  Don't include ldsodefs.h.
	* iconv/skeleton.c: Don't include ldsodefs.h.
	* nss/nsswitch.h: Don't include ldsodefs.h.  Include dlfcn.h.

1999-07-07  Ulrich Drepper  <drepper@cygnus.com>
1999-07-07 18:39:33 +00:00
Ulrich Drepper
d64b6ad075 Update.
* Versions.def: Add GLIBC_2.2 for libc.

	* iconv/gconv.h: Make header suitable for inclusion in public header
	by protecting all names with __.
	* iconv/gconv.c: Adapt for symbol name changes.
	* iconv/gconv.h: Likewise.
	* iconv/gconv_builtin.c: Likewise.
	* iconv/gconv_close.c: Likewise.
	* iconv/gconv_db.c: Likewise.
	* iconv/gconv_dl.c: Likewise.
	* iconv/gconv_int.h: Likewise.
	* iconv/gconv_open.c: Likewise.
	* iconv/gconv_simple.c: Likewise.
	* iconv/iconv.c: Likewise.
	* iconv/iconv_close.c: Likewise.
	* iconv/iconv_open.c: Likewise.
	* iconv/loop.c: Likewise.
	* iconv/skeleton.c: Likewise.
	* iconvdata/8bit-gap.c: Likewise.
	* iconvdata/8bit-generic.c: Likewise.
	* iconvdata/ansi_x3.110.c: Likewise.
	* iconvdata/big5.c: Likewise.
	* iconvdata/cns11643.h: Likewise.
	* iconvdata/cns11643l1.h: Likewise.
	* iconvdata/euc-cn.c: Likewise.
	* iconvdata/euc-jp.c: Likewise.
	* iconvdata/euc-kr.c: Likewise.
	* iconvdata/euc-tw.c: Likewise.
	* iconvdata/gb2312.h: Likewise.
	* iconvdata/iso-2022-jp.c: Likewise.
	* iconvdata/iso-2022-kr.c: Likewise.
	* iconvdata/iso646.c: Likewise.
	* iconvdata/iso8859-1.c: Likewise.
	* iconvdata/iso_6937-2.c: Likewise.
	* iconvdata/iso_6937.c: Likewise.
	* iconvdata/jis0201.h: Likewise.
	* iconvdata/jis0208.h: Likewise.
	* iconvdata/jis0212.h: Likewise.
	* iconvdata/johab.c: Likewise.
	* iconvdata/ksc5601.h: Likewise.
	* iconvdata/sjis.c: Likewise.
	* iconvdata/t.61.c: Likewise.
	* iconvdata/uhc.c: Likewise.
	* stdlib/mblen.c: Likewise.
	* stdlib/mbtowc.c: Likewise.
	* stdlib/wctomb.c: Likewise.
	* wcsmbs/btowc.c: Likewise.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wchar.h: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsmbsload.c: Likewise.
	* wcsmbs/wcsmbsload.h: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.

	* include/limits.h (MB_LEN_MAX): Increase to 16.

	* sysdeps/generic/_G_config.h: Define _G_fpos_t as struct.  Define
	_G_iconv_t.
	* sysdeps/unix/sysv/linux/_G_config.h: Likewise.
	* include/wchar.h: Change mbstate_t to __mbstate_t.

	* libio/Makefile (routines): Add wfiledoalloc, oldiofgetpos,
	oldiofgetpos64, oldiofsetpos, oldiofsetpos64, fputwc, fputwc_u,
	getwc, getwc_u, getwchar, getwchar_u, iofgetws, iofgetws_u,
	iofputws, iofputws_u, iogetwline, iowpadn, ioungetwc, putwc, putwc_u,
	putchar, putchar_u, swprintf, vwprintf, wprintf, wscanf, fwscanf,
	vwscanf, vswprintf, iovswscanf, swscanf, wgenops, wstrops, wfileops,
	and iofwide.
	(tests): Add tst_swprintf, tst_wprintf, tst_swscanf, and tst_wscanf.
	* libio/Versions: Add _IO_fgetpos, _IO_fgetpos64, _IO_fsetpos,
	_IO_fsetpos64, fgetpos, fgetpos64, fgetwc, fgetwc_unlocked, fgetws,
	fgetws_unlocked, fputwc, fputwc_unlocked, fputws, fputws_unlocked,
	fsetpos, fsetpos64, fwide, fwprintf, fwscanf, getwc, getwc_unlocked,
	getwchar, getwchar_unlocked, putwc, putwc_unlocked, putwchar,
	putwchar_unlocked, swprintf, swscanf, ungetwc, vfwprintf, vswprintf,
	vwprintf, vfwscanf, vswscanf, vwscanf, wprintf, and wscanf to
	GLIBC_2.2 for libc.
	* libio/libio.h: Define codecvt struct.  Define _IO_wide_data.
	Extend _IO_file contain pointer to codecvt, widedata and mode.
	(_IO_getwc_unlocked): New macro.
	(_IO_putwc_unlocked): New macro.
	(_IO_fwide): New macro.
	* libio/libioP.h: Add new prototypes and adjust existing declarations.
	* libio/fileops.c (_IO_new_file_close_it): Reset normal or widedata
	buffers based on mode.
	(new_do_write): Set _IO_write_end to _IO_buf_end if stream is wide
	oriented.
	(_IO_new_file_overflow): Don't depend only on _IO_CURRENTLY_PUTTING
	flag to be enough to signal unallocated buffer.  For wide oriented
	stream don't make it linebuffered.  Don't use _IO_do_flush, use
	_IO_new_do_write directly.
	(_IO_new_file_seekoff): Change return value type to _IO_off64_t.
	(_IO_file_seek): Likewise.
	* libio/genops.c (_IO_least_marker): Make global.
	(__underflow): Orient stream if not already done.
	(__uflow): Likewise.
	(_IO_default_seekpos): Change to type _IO_off64_t.
	(_IO_default_seekoff): Likewise.
	(_IO_default_seek): Likewise.
	(_IO_no_init): New function.  Similar to _IO_init but allows to orient
	in initialization.
	* libio/iolibio.h: Add prototype for _IO_vswprintf.  Change _IO_pos_BAD
	to use _IO_off64_t.
	* libio/ftello.c: Use _IO_off_t.  For now abort when use with wide
	char stream.
	* libio/ftello64.c: Likewise.
	* libio/ioftell.c: Likewise.
	* libio/iofopncook.c: Likewise.
	* libio/ioseekoff.c: Likewise.
	* libio/ioseekpos.c: Likewise.
	* libio/oldfileops.c: Likewise.
	* libio/iofgetpos.c: Store state of conversion if necessary.
	* libio/iofgetpos64.c: Likewise.
	* libio/iofsetpos.c: Restore conversion state if necessary.
	* libio/iofsetpos64.c: Likewise.
	* libio/iofdopen.c: Initialize so that stream can be wide oriented.
	* libio/iofopen.c: Likewise.
	* libio/iofopen64.c: Likewise.
	* libio/iopopen.c: Likewise.
	* libio/iovdprintf.c: Likewise.
	* libio/iovsprintf.c: Likewise.
	* libio/iovsscanf.c: Likewise.
	* libio/memstream.c: Likewise.
	* libio/obprintf.c: Likewise.
	* libio/iofputs.c: Orient stream if not already happened.
	* libio/iofputs_u.c: Likewise.
	* libio/iofwrite.c: Likewise.
	* libio/iofwrite_u.c: Likewise.
	* libio/ioputs.c: Likewise.
	* libio/iosetbuffer.c: Handle not yet oriented stream.
	* libio/iosetvbuf.c: Likewise.
	* libio/oldstdfiles.c: Adjust FILEBUF_LITERAL call.
	* libio/stdfiles.c: Likewise.
	* libio/strops.c (_IO_str_overflow): Correctly free buffer after
	failed allocation.
	(_IO_str_seekoff): Use _IO_off64_t.
	* libio/vasprintf.c: Pre-orient stream.
	* libio/vsnprintf.c: Likewise.
	* libio/fputwc.c: New file.
	* libio/fputwc_u.c: New file.
	* libio/fwprintf.c: New file.
	* libio/fwscanf.c: New file.
	* libio/getwc.c: New file.
	* libio/getwc_u.c: New file.
	* libio/getwchar.c: New file.
	* libio/getwchar_u.c: New file.
	* libio/iofgetws.c: New file.
	* libio/iofgetws_u.c: New file.
	* libio/iofputws.c: New file.
	* libio/iofputws_u.c: New file.
	* libio/iofwide.c: New file.
	* libio/iogetwline.c: New file.
	* libio/ioungetwc.c: New file.
	* libio/iovswscanf.c: New file.
	* libio/iowpadn.c: New file.
	* libio/oldiofgetpos.c: New file.
	* libio/oldiofgetpos64.c: New file.
	* libio/oldiofsetpos.c: New file.
	* libio/oldiofsetpos64.c: New file.
	* libio/putwc.c: New file.
	* libio/putwc_u.c: New file.
	* libio/putwchar.c: New file.
	* libio/putwchar_u.c: New file.
	* libio/swprintf.c: New file.
	* libio/swscanf.c: New file.
	* libio/tst_swprintf.c: New file.
	* libio/tst_swscanf.c: New file.
	* libio/tst_wprintf.c: New file.
	* libio/tst_wscanf.c: New file.
	* libio/tst_wscanf.input: New file.
	* libio/vswprintf.c: New file.
	* libio/vwprintf.c: New file.
	* libio/vwscanf.c: New file.
	* libio/wfiledoalloc.c: New file.
	* libio/wfileops.c: New file.
	* libio/wgenops.c: New file.
	* libio/wprintf.c: New file.
	* libio/wscanf.c: New file.
	* libio/wstrops.c: New file.
	* stdio-common/Makefile (routines): Add _itowa, itowa-digits,
	vfwprintf, and vfwscanf.
	* stdio-common/_itoa.c (base_table): Rename to _IO_base_table and
	make global.
	* stdio-common/_itowa.c: New file.
	* stdio-common/_itowa.h: New file.
	* stdio-common/itoa-digits.c: Minimal optimization.
	* stdio-common/itowa-digits.c: New file.
	* stdio-common/printf-parse.h: Allow use in wide character context.
	* stdio-common/printf-prs.c: Define ISASCII and MBRLEN.
	* stdio-common/printf.h (printf_info): Add wide bit.
	* stdio-common/printf_fp.c: Determine from wide bit whether stream
	is wide oriented or not.
	* stdio-common/printf_size.c: Likewise.
	* sysdeps/generic/printf_fphex.c: Likewise.
	* stdlib/strfmon.c: Call __printf_fp with wide bit cleared.
	* stdio-common/vfprintf.c: Rewrite to allow use in wide character
	context.
	* stdio-common/vfscand.c: Likewise.
	* stdio-common/vfwprintf.c: New file.
	* stdio-common/vfwscanf.c: New file.

	* time/Makefile (routines): Add wcsftime.
	(tests): Add tst_wcsftime.
	* time/Versions: Add wcsftime to GLIBC_2.2 for libc.
	* time/strftime.c: Make usable as wcsftime.
	* time/wcsftime.c: New file.
	* time/tst_wcsftime.c: New file.

	* wcsmbs/Makefile (routines): Add wmempcpy and wcschrnul.
	* wcsmbs/Versions: Add wmempcpy and wcschrnul to GLIBC_2.2 for libc.
	* wcsmbs/wcschrnul.c: New file.
	* wcsmbs/wmemcpy.c: New file.
	* wcsmbs/wmemcpy.c: Rename to __wmemcpy and make wmemcpy weak alias.
	* wcsmbs/wmemmove.c: Likewise for wmemmove.

	* manual/stdio.texi: Document is_char and wide element if printf_info.

	* manual/time.texi: Document wcsftime.

	* include/wchar.h: Add prototypes for __wmemcpy, __wmempcpy,
	__wmemmove, __wcschrnul, and __vfwscanf.

	* locale/langinfo.h: Add new LC_TIME entries for wchar_t data.
	* locale/C-time.c: Adapt for above change.
	* locale/categories.def: Likewise.
	* locale/localeinfo.h: Likewise.
	* localedata/Makefile: Don't run tests for now.
1999-06-16 22:55:47 +00:00
Ulrich Drepper
b117f744e1 Update.
1999-03-15  Ulrich Drepper  <drepper@cygnus.com>

	* iconv/gconv.h (gconv_fct): Change parameter from `char' to
	`unsigned char'.
	(gconv_step_data): Likewise.
	* iconv/gconv_int.h (__gconv): Likewise.
	(__BUILINT_TRANS): Likewise.
	* iconv/gconv.c (__gconv): Likewise.
	* iconv/iconv.c (iconv): Add casts for call of __gconv.
	* iconv/skeleton.c: Change local parameters and variable from `char' to
	`unsigned char'.  Remove casts from calls into modules.
	* iconvdata/iso-2022-jp.c (gconv): Change local variable outbuf from
	`char' to `unsigned char'.
	* wcsmbs/btowc.c: Change pointers from `char *' to `unsigned char *'.
	* wcsmbs/mbrtowc.c: Likewise.
	* wcsmbs/mbsnrtowcs.c: Likewise.
	* wcsmbs/mbsrtowcs.c: Likewise.
	* wcsmbs/wcrtomb.c: Likewise.
	* wcsmbs/wcsnrtombs.c: Likewise.
	* wcsmbs/wcsrtombs.c: Likewise.
	* wcsmbs/wctob.c: Likewise.
1999-03-15 20:41:16 +00:00