*** empty log message ***
[gnulib.git] / lib / ChangeLog
index 5585ff2..adde4a3 100644 (file)
-2000-11-03  Bruno Haible  <haible@clisp.cons.org>
+2001-08-31  Jim Meyering  <meyering@lucent.com>
 
 
-       * unicodeio.c: Include wchar.h.
-       (wcrtomb): Provide fallback definition for broken platforms.
-       (print_unicode_char): New alternative definition for platforms where
-       wchar_t is Unicode.
+       * xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
+       Use an initial, malloc'd, buffer of length 128 rather than
+       a statically allocated one of length 1024.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * lib/xgetcwd.c: Don't include pathmax.h.
+       Include stdlib.h and unistd.h if available.
+       Include xalloc.h.
+       (xmalloc, xstrdup, free): Remove decls.
+       (xgetcwd): Don't assume sizes fit in unsigned.
+       Check for overflow when computing sizes.
+       Simplify reallocation code.
+
+2001-08-28  Paul Eggert  <eggert@twinsun.com>
+
+       * Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
+
+       * strtoimax.c: Renamed from strtoxmax.c, removing the
+       old strtoimax.c.
+
+       Also, make the following further changes to make this file's
+       configuration more similar to that of strtol.c:
+       (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
+       (strtoumax, uintmax_t, strtoull, strtol): Remove.
+       (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
+       (strtoimax): Renamed from strtoumax.  All uses of unsigned values
+       changed to signed values.
+
+       And make the following changes as well:
+       Fix copyright notice, as 1999 was missing.
+       (verify): New macro.
+       (strtoimax): Check sizes at compile-time, not run-time.
+       Prefer strtol to strtoll if both work.
+       (main): Remove; it was not that useful and was a pain to maintain.
+
+       * strtoumax.c: Include strtoimax.c, not strtouxmax.c.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * savedir.c (savedir): Remove size parameter, as POSIX says that
+       a directory's st_size can have an arbitrary value, so the old
+       usage could waste an arbitrary amount of memory.  All uses
+       changed.
+       * savedir.h: Update prototype.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * xstrtol.c (strtoimax): New decl.
+
+2001-08-28  Paul Eggert  <eggert@twinsun.com>
+
+       * xstrtol.h: Add copyright notice.
+       (_DECLARE_XSTRTOL): Improve quality of diagnostic for
+       LONGINT_INVALID_SUFFIX_CHAR.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
+       tm to be declared.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * hash.c: Remove '2001' from copyright notice.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * full-write.h: New file.
+       * Makefile.am (libfetish_a_SOURCES): Add full-write.h.
+       * full-write.c: Correct credits, as cccp.c no longer
+       exists and anyway it was so heavily changed from the old cccp
+       code as to be unrecognizable.  Include full-write.h.
+       (full_write) Return size_t, with short writes meaning failure.
+       All callers changed.  This fixes a bug with large buffers
+       on 64-bit hosts.
+       * utime.c: Include full-write.h.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       Merge 'exclude' changes from tar 1.13.22.
+       This fixes one or two unlikely storage allocation overflow bugs,
+       but doesn't change user-visible behavior otherwise.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * exclude.c (bool): Declare, perhaps by including stdbool.h.
+       (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
+       (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
+       Include if available.
+       (<xalloc.h>): Include
+       (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
+       (verify): New macro.  Use it to verify that EXCLUDE macros do not
+       collide with FNM macros.
+       (struct patopts): New struct.
+       (struct exclude): Use it, as exclude patterns now come with options.
+       (new_exclude): Support above changes.
+       (new_exclude, add_exclude_file):
+       Initial size must now be a power of two to simplify overflow checking.
+       (free_exclude, fnmatch_no_wildcards): New function.
+       (excluded_filename): No longer requires options arg, as the options
+       are determined by add_exclude.  Now returns bool, not int.
+       (excluded_filename, add_exclude):
+       Add support for the fancy new exclusion options.
+       (add_exclude, add_exclude_file): Now takes int options arg.
+       Check for arithmetic overflow when computing sizes.
+       (add_exclude_file): xrealloc might modify errno, so don't
+       realloc until after errno might be used.
+
+       * exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
+       New macros.
+       (free_exclude): New decl.
+       (add_exclude, add_exclude_file): Now takes int options arg.
+       (excluded_filename): No longer requires options arg, as the options
+       are determined by add_exclude.  Now returns bool, not int.
+
+2001-08-30  Paul Eggert  <eggert@twinsun.com>
+
+       * alloca.c (alloca): Arg is of type size_t, not unsigned.
+
+2001-08-27  Jim Meyering  <meyering@lucent.com>
+
+       * Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
+
+       * version-etc.c (N_): Remove definition.
+       Revert most of last change.
+       Instead, simply don't mark the `Copyright...' string for translation.
+       Based on advice from Paul Eggert.
+
+       * strtoxmax.c: Tweak comment.
+
+2001-08-26  Jim Meyering  <meyering@lucent.com>
+
+       * version-etc.c (version_etc_copyright_fmt): Replace literal year
+       of copyright with `%s' so translators don't get an untranslated
+       message in 2002.
+       (COPYRIGHT_YEAR): Define.
+       (version_etc): Use fprintf rather than fputs.
+       Suggestion from Ulrich Drepper.
+
+       * Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
+
+       * strtoll.c: New file, from GNU libc.
+       * xstrtoimax.c: New file.
+
+       * xstrtol.h: Add xstrtoimax.
+       * strtoumax.c: New file.  Simply include "strtoumax.c".
+       * strtoimax.c: New file.  Likewise, but first define STRTOUXMAX_SIGNED.
+
+       * strtoumax.c: Factor to work both for unsigned and signed types, ...
+       * strtoxmax.c: ... then renamed to this.
+
+2001-08-13  Paul Eggert  <eggert@twinsun.com>
+
+       * Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
+       Port to Solaris 8, where 'sed' requires a space after the 'r'
+       command, and where sh dislikes "$/".  Clean up the spacing a bit.
+       Redirect output to $tmp just once.
+
+2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
+
+       * addext.c (<errno.h>): Include.
+       (errno): Declare if not defined.
+       (addext): Work correctly when pathconf returns -1 and leaves
+       errno alone because there is no limit.  Also, work even if
+       pathconf returns a value greater than SIZE_MAX.
+
+2001-08-12  Jim Meyering  <meyering@lucent.com>
+
+       * xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
+       Simply `return getcwd (NULL, 0);'.
+       [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
+       Use 1300 as initial value for length, not PATH_MAX.
+
+       * pathmax.h: Clean up cpp syntax.
+
+2001-08-12  Jim Meyering  <meyering@lucent.com>
+
+       * gettimeofday.c: New file.
+       * gtod.h: New file.
+       * Makefile.am (libfetish_a_SOURCES): Add gtod.h.
+
+2001-08-04  Jim Meyering  <meyering@lucent.com>
+
+       * error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if stmt,
+       to get in sync with glibc.
+
+2001-08-03  Paul Eggert  <eggert@twinsun.com>
+
+       The following changes are from gettext 0.10.39 as maintained by
+       Bruno Haible.
+
+       * mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
+       Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
+       with inverted sense.  All uses changed.
+
+       * mbswidth.c: Don't include <limits.h>.
+       Include <stdlib.h> and <string.h> unconditionally.
+       (iswcntrl, mbsinit, ISCNTRL): New macros.
+       (mbsnwidth): Use K&R style function declarations.
+       Don't bother checking for MB_LEN_MAX == 1, since the compiler
+       can optimize it when MB_CUR_MAX == 1.
+       The width of control characters is zero, not 1.
+
+2001-07-15  Jim Meyering  <meyering@lucent.com>
+
+       * Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
+       (BUILT_SOURCES): Add unlocked-io.h.
+       (io_functions): Define.
+       (unlocked-io.h): New rule.
+       (DISTCLEANFILES): Add unlocked-io.h.
+       (all-local): Depend on unlocked-io.h, to ensure it is created.
+
+       * unlocked-io.hin: New file
+
+       * regex.c: Update from glibc.
+
+2001-07-05  Jim Meyering  <meyering@lucent.com>
+
+       * Makefile.am (noinst_HEADERS): Remove definition, per new automake
+       recommendation.
+       (libfetish_a_SOURCES): Put all .h files here instead.
+       Remove a thus-exposed (better checks in automake) duplicate and
+       two unnecessary .h files.
+
+2001-06-11  Jim Meyering  <meyering@lucent.com>
+
+       * regex.c: Update from GNU libc.
+
+2001-05-27  Jim Meyering  <meyering@lucent.com>
+
+       * readutmp.h (UT_TYPE): Define.
+
+2001-05-24  Jim Meyering  <meyering@lucent.com>
+
+       * argmatch.c: Include "quote.h".
+       (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
+       quote function.  Reported by Göran Uddeborg.
+
+2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
+
+       * dirname.c (dir_name): Compute append_dot using path, not newpath
+       which is not yet declared.
+
+2001-05-11  Paul Eggert  <eggert@twinsun.com>
+
+       * Makefile.am (libfetish_a_SOURCES):
+       Add strftime.c, since we now compile it on all hosts.
+
+       * strftime.c (my_strftime):
+       Define to nstrftime if emacs, but only if my_strftime is not defined.
+       (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
+       ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
+       Add one more extra argument: a nanoseconds value.
+       All uses changed.
+       (ns): New macro.
+       (my_strftime function): Add %N format.
+       (emacs_strftimeu): Renamed from emacs_strftime,
+       with extra ut argument.
+
+2001-05-11  Paul Eggert  <eggert@twinsun.com>
+
+       dirname code cleanup.  base_name now behaves more compatibly
+       with POSIX basename when given file names that have trailing
+       slashes, and similarly for dir_name.  Add new primitives
+       base_len and dir_len.  Put the directory-name-related decls
+       into dirname.h.
+
+       * addext.c (ISSLASH, base_name): Remove; now in dirname.h.
+       * backupfile.c (base_name): Likewise.
+       * basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
+       * dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
+       * makepath.c (strip_trailing_slashes): Likewise.
+       * path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN, ISSLASH):
+       Likewise.
+       * rename.c (strip_trailing_slashes): Likewise.
+       * same.c (base_name): Likewise.
+       * stripslash.c (ISSLASH): Likewise.
+
+       * addext.c: Include <dirname.h> after size_t is defined.
+       * backupfile.c: Likewise.
+
+       * addext.c (addext): Use base_len to trim redundant
+       trailing slashes instead of doing it ourselves.
+       But do not trim the last slash if it is not redundant.
+
+       * backupfile.c (find_backup_file_name,
+       max_backup_version): Use base_len instead of rolling it ourselves.
+       Handle the case of "" and (on DOS) "C:" correctly.
+
+       * basename.c: Do not include <stdio.h>, <assert.h>; no longer needed.
+       Include <string.h>, <dirname.h>.
+       (base_name): Allow file names ending in slashes, other than names
+       that are all slashes.  In this case, return the basename followed
+       by the slashes.  This is more general, and can be used in places
+       where the original base_name purposely had an assertion failure.
+       (base_len): New function.
+
+       * dirname.c: Include <string.h> instead of <stdlib.h>.
+       Do not include <assert.h>; no longer needed.
+       Include xalloc.h.
+       (memrchr): Remove decl.
+       (dir_name_r): Remove.
+       (dir_len): Renamed from dirlen.  All callers changed.
+       Rewrite in terms of base_name, for simplicity and consistency.
+       (dir_name): Never return NULL.  All callers changed.
+       Do not include <stdlib.h> in test program; no longer needed.
+       return 0; is fine for test program.
+
+       * dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
+       New macros.
+       (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
+
+       * path-concat.c (path_concat): Use base_len to compute
+       base length, not strlen; this means we cannot rely on memcpy
+       to null-terminate.
+
+       * same.c (STREQ): Remove.
+       (same_name): Handle the case where the basename ends in trailing '/'.
+
+       * stripslash.c (strip_trailing_slashes): Return nonzero if
+       a slash was stripped.  Do not strip the last slash after a
+       file system prefix.
+
+2001-04-08  Jim Meyering  <meyering@lucent.com>
+
+       * getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
+       recomputed; that's necessary when the offset spans a DST transition.
+       Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
+
+2001-04-02  Jim Meyering  <meyering@lucent.com>
+
+       * regex.h, regex.c: Update from GNU libc.
+
+2001-03-19  Paul Eggert  <eggert@twinsun.com>
+
+       * version-etc.c (version_etc_copyright): Update to 2001.
+
+2001-03-16  Paul Eggert  <eggert@twinsun.com>
+
+       * tempname.c (uint64_t): Define to uintmax_t if
+       not defined, and if UINT64_MAX is not defined.
+       Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
+       Reported by John David Anglin.
+
+2001-03-10  Bruno Haible  <haible@clisp.cons.org>
+
+       * localcharset.c (locale_charset): Allow wildcard syntax. Also resolve
+       alias if codeset is empty.
+       * config.charset (BeOS): Use wildcard syntax.
+
+2001-03-13  Jim Meyering  <meyering@lucent.com>
+
+       * path-concat.c (path_concat) [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]:
+       Don't insert a backslash when concatenating e.g., `C:' and `foo'.
+       From Bruno Haible.
+
+2001-03-06  Bruno Haible  <haible@clisp.cons.org>
+
+       * localcharset.c (locale_charset): Don't use setlocale(LC_CTYPE,NULL).
+       Don't return NULL.
+       * unicodeio.c (print_unicode_char): Simplify accordingly.
+
+2001-03-06  Bruno Haible  <haible@clisp.cons.org>
+
+       * config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
+       support for DOS/DJGPP.
+
+2001-02-28  Paul Eggert  <eggert@twinsun.com>
+
+       * Makefile.am (libfetish_a_SOURCES):
+       Add dup-safer.c, fopen-safer.c.
+       (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
+
+       * dup-safer.c, fopen-safer.c, stdio-safer.h, unistd-safer.h: New files.
+
+2001-02-25  Paul Eggert  <eggert@twinsun.com>
+
+       The mkstemp replacement is taken from glibc 2.2.2, with some
+       portability fixes for use outside glibc, as follows:
+
+       * tempname.c (struct_stat64): New macro.
+       (direxists, __gen_tempname): Use it.
+       This avoids a portability problem with Solaris 8.
+
+       * tempname.c (<config.h>): Include if HAVE_CONFIG_H.
+       (<stddef.h>, <stdint.h>, <string.h>):
+       Include only if STDC_HEADERS || _LIBC.
+       (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
+       (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
+       (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
+       (__set_errno): Define this macro if <errno.h> doesn't.
+       (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
+       Define these macros if <stdio.h> doesn't.
+       (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
+       Define these macros if <sys/stat.h>
+       doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
+       (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
+       __xstat64): Define if not _LIBC.
+       (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
+       (__gen_tempname): Invoke gettimeofday only if
+       HAVE_GETTIMEOFDAY || _LIBC;
+       otherwise, fall back on plain "time".
+       Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
+
+       * mkstemp.c (__GT_FILE): Define to zero if not defined.
+
+       * mkstemp.c, tempname.c: New files, taken from glibc 2.2.2.
+
+2001-02-17  Jim Meyering  <meyering@lucent.com>
+
+       * strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
+       around included file name.
+
+       * strnlen.c (__strnlen): Merge in a change from GNU libc.
+
+       * strftime.c: Update from GNU libc (the only changes were to comments).
+
+2001-02-13  Bruno Haible  <haible@clisp.cons.org>
+
+       * mbswidth.h (mbswidth): Also define as macro, to avoid prototype clash.
+
+2001-02-17  Paul Eggert  <eggert@twinsun.com>
+
+       * mbswidth.c, quotearg.c (mbrtowc, mbsinit):
+       Remove workaround macros for hosts that have mbrtowc but not
+       mbstate_t, as we now insist on proper declarations for both
+       before using mbrtowc.
+
+2001-02-17  Jim Meyering  <meyering@lucent.com>
+
+       * regex.c: Update from libc.
+
+2001-02-16  Paul Eggert  <eggert@twinsun.com>
+
+       * alloca.c (malloc): Undef before defining, since stdlib.h
+       may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
+       Reported by Mark Hounschell via Paul Eggert.
+
+2001-01-30  Bruno Haible  <haible@clisp.cons.org>
+
+       * config.charset: Update for FreeBSD 4.2.
+
+2001-01-26  Jim Meyering  <meyering@lucent.com>
+
+       * quotearg.c: Include stddef.h.
+       * quote.c: Include stddef.h.
+       Reported by Axel Kittenberger.
+
+       * xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
+       line in double quotes so that it evokes a better diagnostic.
+       [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
+       Reported by Axel Kittenberger.
+
+2001-01-15  Bruno Haible  <haible@clisp.cons.org>
+
+       * unicodeio.c (print_unicode_char): Cast the second iconv() arg,
+       to avoid a warning.  Add back 'const' to inptr.
+
+2001-01-16  Jim Meyering  <meyering@lucent.com>
+
+       * basename.c: Include <stdio.h>, needed by assert on SunOS4.
+       From Bruno Haible.
+
+2001-01-14  Jim Meyering  <meyering@lucent.com>
+
+       * rename.c: New file.  From Volker Borchert.
+       Include stdlib.h, string.h or strings.h, and xalloc.h.
+       Use strip_trailing_slashes rather than open-coding it.
+
+2001-01-03  Paul Eggert  <eggert@twinsun.com>
+
+       * strftime.c: Sync with glibc time/strftime.c 1.81.
+
+2001-01-03  Jim Meyering  <meyering@lucent.com>
+
+       * unicodeio.c (print_unicode_char): Remove `const' from declaration of
+       local `inptr' to avoid warning with some system declarations of iconv.
+
+2000-12-29  Paul Eggert  <eggert@twinsun.com>
+
+       * modechange.c: Do not assume that mode_t uses the
+       traditional octal encoding.  E.g. "chmod 1 FOO" should set
+       the other-execute bit of FOO even if S_IXOTH != 1.
+
+       (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
+       WOTH, XOTH, ALLM): New macros.
+       (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
+        S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
+       Use them.
+       (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
+       (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
+       (mode_compile):
+       No need to use uintmax_t; unsigned long is long enough.
+       Don't bother to get suffix since we don't use it.
+
+2000-12-24  Jim Meyering  <meyering@lucent.com>
+
+       * hash.c (is_prime): Return explicit boolean values.
+       (hash_get_first): Return NULL to appease Irix5.6's 89.
+       Reported by Nelson Beebe.
+
+2000-10-31  Bruno Haible  <haible@clisp.cons.org>
+
+       * localcharset.c (locale_charset): Add support for Win32.
+
+2000-12-18  Paul Eggert  <eggert@twinsun.com>
+
+       * physmem.h, physmem.c: New files.
+
+       * Makefile.am (libfetish_a_SOURCES): Add physmem.c.
+       (noinst_HEADERS): Add physmem.h.
+
+       * xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
+       't' for compatibility with Solaris 8 sort.
+
+2000-12-18  Bruno Haible  <haible@clisp.cons.org>
+
+       * config.charset: Add support for BeOS.
+
+2000-12-16  Jim Meyering  <meyering@lucent.com>
+
+       * getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
+       SHELLS_FILE to a file name that's useful on djgpp systems.
+       Include stdlib.h.
+       (ADDITIONAL_DEFAULT_SHELLS): Define.
+       (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
+       Based mostly on a patch from Prashant TR.
+
+2000-12-16  Jim Meyering  <meyering@lucent.com>
+
+       This bug had a serious impact on chown: `chown N:M FILE' (for integer
+       N and M) would have treated it like `chown N:N FILE'.
+
+       * userspec.c (parse_user_spec): Fix typo: s/u/g/.
+
+2000-10-31  Bruno Haible  <haible@clisp.cons.org>
+
+       * config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB, VISCII,
+       CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256, CP1257
+       to the list of canonical encodings. Rename EUC-CN to GB2312.
+
+2000-12-08  Andreas Schwab  <schwab@suse.de>
+
+       * mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
+       invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
+
+2000-12-07  Jim Meyering  <meyering@lucent.com>
+
+       * stripslash.c (ISSLASH): Define.
+       (strip_trailing_slashes): Use ISSLASH rather than comparing against `/'.
+       From Prashant TR.
+
+       * dirname.c (FILESYSTEM_PREFIX_LEN): Define.
+       (dir_name_r): Declare this function as static.
+       [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
+       manifest itself on a name containing a mix of slashes and
+       backslashes.
+       Make this function work with names starting with a DOS-style
+       drive letter and colon prefix.
+       (dir_name): Append `.' if necessary.
+       Based mostly on patches from Prashant TR and Eli Zaretskii.
+
+       * dirname.h (dir_name_r): Remove prototype.
+
+2000-12-05  Jim Meyering  <meyering@lucent.com>
+
+       * dirname.c (dir_name_r): Add `const' in a few local declarations.
+
+2000-12-04  Jim Meyering  <meyering@lucent.com>
+
+       * path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
+       Also include memory.h, stdlib.h, unistd.h if appropriate.
+       Reported by Andreas Jaeger (conflicting declaration of malloc).
+
+2000-12-02  Jim Meyering  <meyering@lucent.com>
+
+       * closeout.h: Make idempotent, to avoid some obscure warnings.
+
+2000-12-01  Paul Eggert  <eggert@twinsun.com>
+
+       * memrchr.c: Include <config.h> before any system include file.
+
+2000-11-29  Paul Eggert  <eggert@twinsun.com>
+
+       * dirname.c (dir_name_r): Fix typo: int -> size_t.
+
+2000-11-26  Jim Meyering  <meyering@lucent.com>
+
+       * memcoll.c: Include sys/types.h.  From Werner Almesberger.
+
+2000-11-22  Paul Eggert  <eggert@twinsun.com>
+
+       * strftime.c (my_strftime): Do not invoke mbrlen with a
+       size of (size_t) -1; it's not portable.
+
+2000-11-17  Akim Demaille  <akim@epita.fr>
+
+       * obstack.h: Formatting changes.
+       (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
+       prevent type checking.
+       (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
+       cast the value to (void *): assigning a `foo *' to a `void *'
+       variable is valid.
+       (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
+
+2000-11-17  Jim Meyering  <meyering@lucent.com>
+
+       * strstr.c: Update from GNU libc.
+
+2000-11-16  Jim Meyering  <meyering@lucent.com>
+
+       * strverscmp.c: Incorporate weak-alias-related changes from glibc.
+
+2000-11-11  Jim Meyering  <meyering@lucent.com>
+
+       * error.c: Add a couple #includes, merging from GNU libc version.
+
+2000-11-10  Jim Meyering  <meyering@lucent.com>
+
+       * obstack.h: Update from GNU libc.
+       * obstack.c: Likewise.
 
 2000-11-06  Paul Eggert  <eggert@twinsun.com>
 
 
 2000-11-06  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/getusershell.c (setusershell): Use rewind rather than
+       * getusershell.c (setusershell): Use rewind rather than
        fseek/fseeko, to avoid configuration hassles with fseeko.
        Don't bother opening SHELLS_FILE if shellstream is NULL;
        it's not necessary.
        fseek/fseeko, to avoid configuration hassles with fseeko.
        Don't bother opening SHELLS_FILE if shellstream is NULL;
        it's not necessary.
 
 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
 
 
 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
 
-       * lib/fnmatch.c: Do not comment out all the code if we are using
+       * fnmatch.c: Do not comment out all the code if we are using
        the GNU C library, because in some cases we are replacing buggy
        code in the GNU C library itself.
 
 2000-10-30  Paul Eggert  <eggert@twinsun.com>
 
        the GNU C library, because in some cases we are replacing buggy
        code in the GNU C library itself.
 
 2000-10-30  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/error.h, lib/getline.h, lib/modechange.h:
+       * error.h, getline.h, modechange.h:
        Remove "2000" from Copyright line, as the file hasn't been
        changed this year other than in the copyright notice.
 
        Remove "2000" from Copyright line, as the file hasn't been
        changed this year other than in the copyright notice.
 
-       * lib/xalloc.h: Add "2000" to Copyright line, as this file
+       * xalloc.h: Add "2000" to Copyright line, as this file
        was changed this year.
 
 2000-10-30  Paul Eggert  <eggert@twinsun.com>
 
        was changed this year.
 
 2000-10-30  Paul Eggert  <eggert@twinsun.com>
 
-       * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
+       * fnmatch.c (FOLD): Do not assume that characters are unsigned.
        (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
        e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
 
        (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
        e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
 
 
        * quotearg.h (enum quoting style): New enum clocale_quoting_style.
 
 
        * quotearg.h (enum quoting style): New enum clocale_quoting_style.
 
-       * quotearg.c: (quoting_style_args, quoting_style_vals,
+       * quotearg.c (quoting_style_args, quoting_style_vals,
        quotearg_buffer_restyled): Add support for
        clocale_quoting_style.  Undo previous change to
        locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
        quotearg_buffer_restyled): Add support for
        clocale_quoting_style.  Undo previous change to
        locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"