+2005-05-13 Bruno Haible <bruno@clisp.org>
+
+ * stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
+ int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
+ UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
+ INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
+ INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
+ Add support for 64-bit integers in the MSVC compiler.
+
+2005-05-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * byteswap_.h, getsubopt.h, iconvme.h, strsep.c, strsep.h:
+ Change the initial comment to refer to GPL, not LGPL.
+ gnulib-tool will change it to LGPL as needed.
+
+ * __fpending.c, acl.c, acl.h, alloca_.h, allocsa.c, allocsa.h,
+ argmatch.c, argmatch.h, argp-ba.c, argp-eexst.c, argp-fmtstream.c,
+ argp-fmtstream.h, argp-fs-xinl.c, argp-help.c, argp-namefrob.h,
+ argp-parse.c, argp-pv.c, argp-pvh.c, argp-xinl.c, argp.h, argz.c,
+ argz_.h, asnprintf.c, asprintf.c, atanl.c, backupfile.c,
+ backupfile.h, base64.c, base64.h, basename.c, binary-io.h,
+ byteswap_.h, c-ctype.c, c-ctype.h, c-stack.c, c-stack.h,
+ c-strtod.c, calloc.c, canon-host.c, canonicalize.c,
+ canonicalize.h, ceill.c, chdir-long.c, chdir-long.h, chown.c,
+ classpath.c, classpath.h, cloexec.c, closeout.c, closeout.h,
+ concatpath.c, config.charset, copy-file.c, copy-file.h,
+ cycle-check.c, cycle-check.h, diacrit.c, diacrit.h, dirfd.c,
+ dirfd.h, dirname.c, dirname.h, dummy.c, dup-safer.c, dup2.c,
+ eealloc.h, error.c, error.h, euidaccess.c, exclude.c, exclude.h,
+ execute.c, execute.h, exit.h, exitfail.c, exitfail.h, expl.c,
+ fatal-signal.c, fatal-signal.h, fd-safer.c, file-type.c,
+ file-type.h, fileblocks.c, filemode.c, filemode.h, findprog.c,
+ findprog.h, floorl.c, fnmatch.c, fnmatch_.h, fnmatch_loop.c,
+ fopen-safer.c, free.c, frexpl.c, fsusage.c, fsusage.h,
+ full-read.c, full-read.h, full-write.c, full-write.h,
+ fwriteerror.c, fwriteerror.h, gai_strerror.c, gcd.c, gcd.h,
+ getaddrinfo.c, getaddrinfo.h, getcwd.c, getcwd.h, getdate.h,
+ getdate.y, getdomainname.c, getdomainname.h, getgroups.c,
+ gethostname.c, gethrxtime.c, gethrxtime.h, getline.c, getline.h,
+ getloadavg.c, getndelim2.c, getndelim2.h, getnline.c, getnline.h,
+ getopt.c, getopt1.c, getopt_.h, getopt_int.h, getpagesize.h,
+ getpass.c, getpass.h, getsubopt.c, getsubopt.h, gettext.h,
+ gettime.c, gettimeofday.c, getugroups.c, getusershell.c,
+ group-member.c, group-member.h, hard-locale.c, hard-locale.h,
+ hash-pjw.c, hash-pjw.h, hash.c, hash.h, human.c, human.h,
+ iconvme.c, iconvme.h, idcache.c, inet_ntop.h, intprops.h,
+ inttostr.c, inttostr.h, isdir.c, javacomp.c, javacomp.h,
+ javacomp.sh.in, javaexec.c, javaexec.h, javaexec.sh.in,
+ lbrkprop.h, lchown.c, ldexpl.c, linebreak.c, linebreak.h,
+ linebuffer.c, linebuffer.h, localcharset.c, localcharset.h,
+ logl.c, long-options.c, long-options.h, lstat.c, makepath.c,
+ makepath.h, malloc.c, mathl.h, mbswidth.c, mbswidth.h, md5.c,
+ md5.h, memcasecmp.c, memcasecmp.h, memchr.c, memcmp.c, memcoll.c,
+ memcoll.h, memcpy.c, memmem.c, memmem.h, mempcpy.c, mempcpy.h,
+ memrchr.c, memrchr.h, memset.c, minmax.h, mkdir.c, mkdtemp.c,
+ mkdtemp.h, mkstemp.c, mktime.c, modechange.c, modechange.h,
+ mountlist.c, mountlist.h, nanosleep.c, obstack.c, obstack.h,
+ openat.c, openat.h, pagealign_alloc.c, pagealign_alloc.h,
+ path-concat.c, path-concat.h, pathmax.h, pathname.h, physmem.c,
+ physmem.h, pipe.c, pipe.h, poll.c, poll_.h, posixtm.c, posixtm.h,
+ posixver.c, printf-args.c, printf-args.h, printf-parse.c,
+ printf-parse.h, progname.c, progname.h, progreloc.c, putenv.c,
+ quote.c, quote.h, quotearg.c, quotearg.h, raise.c, readlink.c,
+ readtokens.c, readtokens.h, readtokens0.c, readtokens0.h,
+ readutmp.c, readutmp.h, realloc.c, ref-add.sin, ref-del.sin,
+ regex.c, regex.h, rename.c, rmdir.c, rpmatch.c, safe-read.c,
+ safe-read.h, safe-write.c, safe-write.h, same.c, same.h,
+ save-cwd.c, save-cwd.h, savedir.c, savedir.h, setenv.c, setenv.h,
+ settime.c, sh-quote.c, sh-quote.h, sha1.c, sha1.h, sig2str.c,
+ sig2str.h, sincosl.c, snprintf.c, snprintf.h, sqrtl.c,
+ stat-macros.h, stat.c, stdbool_.h, stdint_.h, stdio-safer.h,
+ stpcpy.c, stpcpy.h, stpncpy.c, stpncpy.h, strcase.h, strcasecmp.c,
+ strchrnul.c, strchrnul.h, strcspn.c, strdup.c, strdup.h,
+ strerror.c, strftime.c, strftime.h, stripslash.c, strndup.c,
+ strndup.h, strnlen.c, strpbrk.c, strpbrk.h, strsep.c, strsep.h,
+ strstr.c, strstr.h, strtod.c, strtoimax.c, strtok_r.c, strtok_r.h,
+ strtol.c, strtoll.c, strtoul.c, strtoull.c, strverscmp.c,
+ strverscmp.h, sysexit_.h, tempname.c, time_r.c, time_r.h,
+ timegm.c, timegm.h, timespec.h, trigl.c, trigl.h, ucs4-utf16.h,
+ ucs4-utf8.h, unicodeio.c, unicodeio.h, unistd-safer.h,
+ unlocked-io.h, unsetenv.c, userspec.c, utf16-ucs4.h, utf8-ucs4.h,
+ utime.c, utimecmp.c, utimecmp.h, utimens.c, vasnprintf.c,
+ vasnprintf.h, vasprintf.c, vasprintf.h, version-etc-fsf.c,
+ version-etc.c, version-etc.h, vsnprintf.c, vsnprintf.h,
+ w32spawn.h, wait-process.c, wait-process.h, xalloc-die.c,
+ xalloc.h, xallocsa.c, xallocsa.h, xasprintf.c, xgetcwd.c,
+ xgetcwd.h, xgetdomainname.c, xgetdomainname.h, xgethostname.c,
+ xmalloc.c, xmemcoll.c, xnanosleep.c, xreadlink.c, xreadlink.h,
+ xsetenv.c, xsetenv.h, xsize.h, xstrndup.c, xstrndup.h, xstrtod.c,
+ xstrtod.h, xstrtoimax.c, xstrtol.c, xstrtol.h, xstrtoumax.c,
+ xtime.h, xvasprintf.c, xvasprintf.h, yesno.c, yesno.h:
+ Update FSF postal mail address.
+
+2005-05-10 Yoann Vandoorselaere <yoann.v@prelude-ids.com>
+
+ * getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
+ specified in ai_socktype. Fix invalid ai_protocol
+ check. ai_protocol is usually set to 0 or depending on
+ ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP. Checking for
+ SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid. Set
+ ai_socktype / ai_protocol in the returned addrinfo structure.
+
+2005-05-09 Yoann Vandoorselaere <yoann.v@prelude-ids.com>
+ Bruno Haible <bruno@clisp.org>
+
+ * inet_ntop.h: New file.
+ * inet_ntop.c: New file, from glibc with modifications.
+
+2005-05-08 Jim Meyering <jim@meyering.net>
+
+ * classpath.c (PATH_SEPARATOR): Remove insignificant trailing blank.
+
+2005-05-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ Merge from coreutils. Among other things,
+ add bulletproofing for cases where stdin, stdout, or stderr are closed.
+ * fd-safer.c: New file.
+ * fcntl-safer.h, open-safer.c: Remove.
+ * chdir-long.c: Fix comment "fetish" -> "coreutils".
+ * dup-safer.c: Include unistd-safer.h first.
+ Don't include errno.h.
+ (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
+ * file-type.h: Don't assume invoker included sys/stat.h first.
+ * file-type.c: Rely on file-type.h change.
+ * getloadavg.c: Include unistd-safer.h.
+ (getloadavg): Use safer open.
+ * getusershell.c: Include "stdio-safer.h".
+ (getusershell): Use safer fopen.
+ * long-options.c (long_options): Use NULL rather than 0.
+ * modechange.h (mode_free): Remove; all callers changed to invoke
+ 'free'.
+ * modechange.c: Likewise.
+ xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
+ (MODE_DONE): New constant.
+ (struct mode_change): Remove 'next' member.
+ (make_node_op_equals): New function; like the old one of the
+ same name, except it allocates an array.
+ (mode_compile, mode_create_from_ref): Use it.
+ (mode_compile): Allocate result as an array, not a linked list.
+ Parse octal string ourself, so that we catch mistakes like "+0".
+ (mode_adjust): Arg is an array, not a linked list.
+ * modechange.c: Include stat-macros.h, xalloc.h.
+ (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
+ (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
+ (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
+ Remove. This is now stat-macros.h's job.
+ (talloc): Remove. All callers replaced by xalloc, so that
+ our invokers don't have to worry about reporting memory failures.
+ (make_node_op_equals): Remove.
+ (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
+ New constants.
+ (struct mode_change): Moved here from modechange.h.
+ (mode_append_entry): Remove.
+ (mode_compile): Remove MASKED_OPS arg, since it encouraged
+ apps to have incorrect behavior. Use simpler algorithm for head
+ and tail. Don't futz with umask; that's now the job of mode_adjust.
+ Detect more invalid usages rather than having somewhat-random behavior.
+ Don't insert an "a=" action, as that leads to incorrect behavior.
+ (mode_compile, mode_create_from_ref): Return NULL on error instead
+ of an enum, since now there's only one way to have an error. All
+ callers changed.
+ (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
+ at the correct time. Simplify calculation of "+u" and its ilk.
+ Don't mishandle "+X".
+ (mode_free): Remove "register" and localize decls.
+ * modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
+ (struct mode_change): Move to modechange.c; callers don't
+ need to see this stuff.
+ (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
+ (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
+ (mode_change, mode_adjust): Reflect the new signatures noted above.
+ * nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
+ that might redefine system include files.
+ (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
+ (my_usleep): Use NULL rather than (void *) 0.
+ (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
+ Use siginterrupt to specify that system calls should be interrupted.
+ (rpl_nanosleep): Move initialization of suspended closer to call of
+ my_usleep.
+ * readutmp.h (read_utmp): New arg OPTIONS. All uses changed.
+ * readutmp.c: Likewise. Include signal.h, stdbool.h.
+ (desirable_utmp_entry): New function.
+ (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
+ using x2nrealloc, to simplify logic.
+ (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
+ size calculation. Do not assume utmp file is a regular file.
+ * readutmp.h (UT_PID): Moved here from ../src/who.c.
+ (READ_UTMP_CHECK_PIDS): New constant.
+ * save-cwd.c: Include unistd-safer.h.
+ (save_cwd): Use fd_safer.
+ * tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
+ [!_LIBC] Include "stat-macros.h" instead.
+ * unistd-safer.h (fd_safer): New decl.
+
+2005-05-01 Oskar Liljeblad <oskar@osk.mine.nu>
+
+ * byteswap_.h: New file.
+
+2005-04-25 Albert Chin <china@thewrittenword.com>
+
+ * regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
+ Toolkit C bug.
+
+2005-04-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getdate.y (zone): Allow relunit_snumber after tZONE, so
+ that "UTC +1 second" continues to work. Problem reported
+ by Dmitry V. Levin.
+ (relunit_snumber): New rule.
+ (relunit): Use it.
+
+2005-04-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getdate.y (universal_time_zone_table): New constant.
+ (time_zone_table): Remove GMT, UT, UTC entries; they're now in
+ universal_time_zone_table.
+ (lookup_zone): Prefer universal_time_zone_table to
+ local_time_zone_table, so that "GMT" time stamps are allowed in
+ London during the summer. Problem reported by Ian Abbott.
+
+2005-04-12 Jim Meyering <jim@meyering.net>
+
+ * human.c (humblock): Set *options even when returning due to
+ xstrtoumax conversion failure. Thanks to a used-uninitialized
+ warning from gcc-4.
+
+2005-04-09 Jim Meyering <jim@meyering.net>
+
+ * posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
+ -Wuninitialized: initialize tm0.tm_year.
+
+2005-04-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getdate.y (parser_control): rels_seen is now a boolean, not a
+ count, since there's no maximum. All uses changed.
+ Add member dsts_seen.
+ (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
+ not being INT_MAX.
+ (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
+ Use pc_rels_seen to decide whther a date is absolute.
+
+ * getdate.y (number): Don't overwrite year.
+ (get_date): Initialize pc.year.digits to 0, not 4, to enable above
+ check.
+
+2005-04-02 Simon Josefsson <jas@extundo.com>
+
+ * getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
+ patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
+
+2005-03-27 Jim Meyering <jim@meyering.net>
+
+ * argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
+
+2005-03-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ * intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
+ "one's complement" -> "ones' complement" in comment, as per Knuth.
+ "value of type" -> "type or expression" in comment.
+ * mktime.c, strftime.c: Propagate intprops.h comment nits.
+
+2005-03-26 Jim Meyering <jim@meyering.net>
+
+ Comment nits.
+ * intprops.h: Add the apostrophe in `(one|two)'s complement'.
+ Correct typos: s/or/of/.
+
+2005-03-23 Jim Meyering <jim@meyering.net>
+
+ * canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
+
+2005-03-21 Jim Meyering <jim@meyering.net>
+
+ Changes imported from coreutils.
+
+ * cycle-check.c: Don't include xalloc.h.
+
+ * path-concat.c: Don't include assert.h.
+ (path_concat): Remove assertion that would have triggered
+ for ABASE starting with more than one slash.
+ Reported by Andreas Schwab.
+
+ * path-concat.c (path_concat): Set *BASE_IN_RESULT
+ properly when ABASE is an absolute file name.
+ Correct the description of this function.
+ Include <assert.h>.
+ Add an assertion and a test driver.
+ This fixes a bug introduced on 2004-07-02.
+ Andreas Schwab reported the resulting failure of cp --parents:
+ http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
+
+2005-03-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ * strftime.c (my_strftime): If the underlying strftime returns 0
+ (which shouldn't happen), generate nothing instead of returning 0
+ immediately, so that nstrftime (NULL, ...) doesn't return 0.
+
+2005-03-16 Bruno Haible <bruno@clisp.org>
+
+ * stdint_.h: Use HAVE_LONG_LONG_64BIT instead of HAVE_LONGLONG_64BIT.
+
+2005-03-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ * strftime.c (my_strftime): Prepend space to format so that we can
+ reliably distinguish strftime failure from empty output on POSIX
+ hosts.
+
+2005-03-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ * iconvme.c (SIZE_MAX): New macro, if not already defined.
+ (iconv_string): Don't guess a size-zero buffer, as that might cause
+ buffer overrun. Instead, avoid multiplying by MB_LEN_MAX if the
+ result would be 'too large', where 'too large' is (heuristically)
+ the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
+ overflow concerns. This will prevent some unwanted malloc failures
+ when the inputs are very large.
+
+2005-03-15 Bruno Haible <bruno@clisp.org>
+
+ * regex.c (byte_re_match_2_internal): Rename local variable 'not' to
+ 'negate'.
+
+ * regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
+ variable.
+
+ * regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc results.
+
+2005-03-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
+ TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
+ intprops.h.
+ * strtol.c: Likewise.
+
+2005-03-14 Simon Josefsson <jas@extundo.com>
+
+ * timegm.h: Use proper prototype CPP guards, reported by Dave Love
+ <fx@gnu.org>.
+
+2005-03-14 Jim Meyering <jim@meyering.net>
+
+ * strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
+ && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
+ to be nonzero so that we (and caller) can detect the difference
+ between a valid zero-length expansion and an error return, even
+ when the underlying strftime fails before writing anything into
+ that location.
+
+2005-03-10 Jim Meyering <jim@meyering.net>
+
+ * save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
+ so that this module works on systems without fchdir.
+
+2005-03-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Factor int-properties macros into a single file, except for
+ glibc-related files.
+ * intprops.h: New file.
+ * getloadavg.c: Include it instead of limits.h.
+ (INT_STRLEN_BOUND): Remove.
+ * human.c: Include intprops.h.
+ (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
+ * human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than 302/1000.
+ * inttostr.h: Include intprops.h instead of limits.h.
+ (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
+ * mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
+ for consistency with intprops.h.
+ (time_t_is_integer, twos_complement_arithmetic): Use them.
+ * sig2str.h: Include <signal.h>, intprops.h.
+ (INT_STRLEN_BOUND): Remove.
+ * strftime.c (TYPE_SIGNED): Remove.
+ (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
+ * strtol.c: Adjust comments to match intprops.h.
+ * userspec.c: Include intprops.h.
+ (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
+ * utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
+ * utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
+ instead of rolling our own expressions.
+ * xstrtol.c: Include xstrtol.h first, to test interface.
+
+ * strftime.c: Include <stdbool.h>. Use bool where appropriate,
+ instead of int.
+ (my_strftime): Do not mishandle years close to INT_MAX, by doing
+ the right thing even if adding 1900 would overflow. Similarly
+ for tm_mon + 1 and tm_yday + 1.
+ Make %Y always equivalent to %C%y, and similarly for %G and %g.
+ (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
+ (DO_SIGNED_NUMBER): New macro.
+ (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
+
+2005-03-07 Bruno Haible <bruno@clisp.org>
+
+ * pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
+
+2005-03-03 Derek R. Price <derek@ximbiot.com>
+ Bruno Haible <bruno@clisp.org>
+
+ * pagealign_alloc.h: New file.
+ * pagealign_alloc.c: New file.
+
+2005-01-28 Bruno Haible <bruno@clisp.org>
+
+ * stpncpy.h (stpncpy): Define as a macro without arguments, so that
+ stpncpy.c uses it.
+
+2005-03-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
+ The workaround isn't strictly needed for POSIX conformance, and
+ it's too much of a pain to configure and maintain. We'll ask
+ people to fix their kernels instead.
+ * xnanosleep.c: Don't include gethrxtime.h or xtime.h.
+ (NANOSLEEP_BUG_WORKAROUND): Remove.
+ (xnanosleep): Remove the workaround.
+
+2005-02-12 Bruno Haible <bruno@clisp.org>
+
+ * vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
+
+2005-02-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ * gethrxtime.h, gethrxtime.c, xtime.h: New files.
+ * timespec.h (gettime): Return void, since it always
+ succeeds now. All uses changed.
+ * gettime.c (gettime) Likewise.
+ [HAVE_NANOTIME]: Prefer nanotime.
+ Assume gettimeofday succeeds, as POSIX requires.
+ Assime time () succeeds, since other code already does.
+ * xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
+ (timespec_subtract): Remove.
+ (NANOSLEEP_BUG_WORKAROUND): New constant.
+ (xnanosleep): Use gethrxtime rather than gettime; this simplifies
+ things considerably. Use it only on GNU/Linux hosts, since the
+ workaround shouldn't be needed elsewhere.
+
+2005-02-24 Bruno Haible <bruno@clisp.org>
+
+ * gettext.h: Update from GNU gettext 0.14.2.
+
+2005-02-24 Bruno Haible <bruno@clisp.org>
+
+ * localcharset.c: Update from GNU gettext 0.14.2.
+ * config.charset: Update from GNU gettext 0.14.2.
+
+2005-02-22 Simon Josefsson <jas@extundo.com>
+
+ * iconvme.h, iconvme.c: New files, from libc.
+
+2005-02-20 Neil Conway <neilc@samurai.com>
+
+ * xgethostname.c (xgethostname): Check for ENOMEM, which is
+ returned by OSX/Darwin if the specified buffer is not large
+ enough for the hostname.
+
+2005-02-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ * memrchr.h: New file.
+ * chdir-long.c: Include it.
+ * memrchr.c [!defined _LIBC]: Include it rather than <string.h>
+ Don't bother including stddef.h.
+
+2005-02-03 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * argp-help.c (__argp_help): Create a fake struct argp_state and
+ pass it to _help, otherwise the latter coredumps trying to
+ dereference state.root_argp.
+
+2005-02-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ * mountlist.h (MOUNTLIST_H_): New macro, to protect against double
+ inclusion.
+ Include <sys/types.h>, for dev_t.
+ (ME_DUMMY, ME_REMOTE): Move from here....
+ * mountlist.c (ME_DUMMY, ME_REMOTE): To here.
+ (ME_DUMMY): Count "subfs" as a dummy. Problem reported by
+ Dmitry V. Levin.
+ Include mountlist.h first, to test the interface.
+
+2005-01-29 Bruno Haible <bruno@clisp.org>
+
+ * progname.c (program_name): Initialize.
+ Needed when linking statically on MacOS X.
+
+2005-01-28 Bruno Haible <bruno@clisp.org>
+
+ * javacomp.sh.in: New file, from GNU gettext.
+ * javacomp.h: New file, from GNU gettext.
+ * javacomp.c: New file, from GNU gettext.
+
+2005-01-26 Bruno Haible <bruno@clisp.org>
+
+ * javaexec.sh.in: New file, from GNU gettext.
+ * javaexec.h: New file, from GNU gettext.
+ * javaexec.c: New file, from GNU gettext.
+
+2005-01-26 Simon Josefsson <jas@extundo.com>
+
+ * gai_strerror.c: Use GPL in header.
+
+2005-01-24 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * argp-help.c (hol_entry_help): Avoid using non-constant
+ initializers for struct pentry_state.
+ (__argp_error): Check return value of __asprintf
+ (__argp_failure): Translate error message
+
+ * argp-parse.c: Removed braces around the expansion of N_()
+
+2005-01-21 Jim Meyering <jim@meyering.net>
+
+ * openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
+ same value as for Solaris 9.
+
+ * chdir-long.c (chdir_long): Rewrite to remove limitation on
+ component length. This included changing the parameter to be
+ of type `char *' rather than `char const *'.
+ * chdir-long.h (chdir_long): Update prototype.
+
+ * openat.c (fdopendir, fstatat): New functions.
+ * openat.h: Include headers required for use of DIR and struct stat.
+ [AT_SYMLINK_NOFOLLOW]: Define.
+ (fdopendir, fstatat): Add prototypes.
+
+2005-01-21 Bruno Haible <bruno@clisp.org>
+
+ * classpath.h: New file, from GNU gettext.
+ * classpath.c: New file, from GNU gettext.
+
+2005-01-20 Simon Josefsson <jas@extundo.com>
+
+ * version-etc-fsf.c: New file, with version_etc_copyright.
+ * version-etc.c: Remove version_etc_copyright.
+ * version-etc.h (version_etc_copyright): Use [] instead of * in
+ prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
+
+2005-01-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ * save-cwd.c (save_cwd): Remove code to support the case
+ where fchdir is missing or flaky.
+
+2005-01-20 Simon Josefsson <jas@extundo.com>
+
+ * base64.h (isbase64): Add.
+
+ * base64.c (isb64): Rename to isbase64, use to_uchar instead of
+ using a unsigned prototype, don't inline.
+ (base64_decode): Use it.
+
+2005-01-19 Bruno Haible <bruno@clisp.org>
+
+ * sh-quote.h: New file, from GNU gettext.
+ * sh-quote.c: New file, from GNU gettext.
+
+2005-01-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ Merge changes from coreutils, as described below in several
+ changelogs dated today.
+
+ * save-cwd.c: Include "save-cwd.h" before other include files.
+ (O_DIRECTORY): Remove; not needed here, since "." must be
+ a directory. All uses removed.
+ (save_cwd): Use __sgi || __sun, not sun || __sun. __sun is
+ universal on Suns, and we also need to test for IRIX.
+ Revamp code to use 'if' rather than '#if'.
+ Avoid unnecessary comparison of cwd->desc to 0.
+
+ * utimens.c (futimens): Robustify the previous patch, by checking
+ for known valid error numbers rather than observed invalid ones.
+
+2005-01-18 Jim Meyering <jim@meyering.net>
+
+ * version-etc.c (version_etc_copyright): Update copyright date.
+
+ * utimens.c (futimens): Account for the fact that futimes
+ can also fail with errno == ENOSYS or errno == ENOENT.
+ Patch from Dmitry V. Levin.
+
+ Change the name of the robust chdir function from chdir to chdir_long.
+ * save-cwd.c: Include chdir-long.h rather than chdir.h.
+ (restore_cwd): Use chdir_long, not chdir.
+ * chdir-long.c: Renamed from chdir.c.
+ * chdir-long.h: Renamed from chdir.h.
+ [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
+ Hurd.
+
+2005-01-18 Bob Proulx <bob@proulx.com>
+
+ * obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to simplify
+ offsetof() macro construct to avoid compile failure with native HP-UX
+ 11.0 ANSI C compiler.
+
+2005-01-06 Bruno Haible <bruno@clisp.org>
+
+ * stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming, redundant
+ because stpncpy.m4 takes care of it.
+
+2004-01-24 Bruno Haible <bruno@clisp.org>
+
+ * progreloc.c (xstrdup): Define as strdup if no xmalloc should be used.
+
+2003-10-09 Bruno Haible <bruno@clisp.org>
+
+ * progreloc.c: Include xalloc.h instead of xmalloc.h.
+
+2005-01-06 Bruno Haible <bruno@clisp.org>
+
+ * fwriteerror.h (fwriteerror): Change specification to include fclose.
+ * fwriteerror.c: Include <stdbool.h>.
+ (fwriteerror): At the end, close the file stream. Record whether
+ stdout was already closed.
+
+2004-05-27 Bruno Haible <bruno@clisp.org>
+
+ * execute.c (environ): Declare if needed.
+ * pipe.c (environ): Likewise.
+ Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
+
+2005-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ * human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
+ definitions to be after all include files, to avoid collisions.
+ Problem reported by Bob Proulx.
+
+2004-12-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ * error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
+ not needed. This removes a dependency on the gettext module.
+ [defined _LIBC]: Do not include <libintl.h>; not needed.
+
+2004-12-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ * c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
+ HAVE_DECL_STRTOLD.
+
+2004-12-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ * argp-parse.c: Include <stddef.h>.
+ (alignof, alignto): New macros.
+ (parser_init): Don't assume that void * is aligned sufficiently
+ for struct option.
+
+ * getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
+ need to extend the stack.
+ (YYINITDEPTH): New macro, so that the initial stack isn't overly
+ large.
+
+2004-12-22 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * argp-parse.c (parser_init): Avoid arithmetics on void pointers.
+
+2004-12-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ * alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
+ Remove now-obsolete comment about AIX.
+ * getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
+ (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
+ (YYMAXDEPTH): New macro.
+
+2004-12-18 Bruno Haible <bruno@clisp.org>
+
+ * fatal-signal.c (fatal_signals): Make non-const.
+ (init_fatal_signals): New function.
+ (uninstall_handlers, install_handlers): Ignore signals that were set to
+ SIG_IGN.
+ (at_fatal_signal): Call init_fatal_signals.
+ (init_fatal_signal_set): Likewise. Ignore signals that were set to
+ SIG_IGN.
+ Reported by Paul Eggert.
+
+2004-12-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getdate.y (textint): New member "negative".
+ (time_zone_hhmm): New function.
+ Expect 14 shift-reduce conflicts, not 13.
+ (o_colon_minutes): New rule.
+ (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
+ (yylex): Set the "negative" member of signed numbers.
+
+2004-12-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Changes imported from coreutils.
+ * hard-locale.c: Assume <locale.h> exists.
+ Include "strdup.h".
+ (GLIBC_VERSION): New macro.
+ (hard_locale): Assume setlocale exists.
+ Rewrite to avoid #ifdef.
+ Use strdup rather than malloc + strcpy.
+ * human.c: Assume <locale.h> exists.
+ (human_readable): Assume localeconv exists.
+
+2004-12-01 Jakub Jelinek <jakub@redhat.com>
+
+ * mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
+ convert T2, not T. (Imported from libc.)
+
+2004-11-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getcwd.c (is_ENAMETOOLONG): New macro.
+ (__getcwd.c): Don't restore errno; glibc doesn't.
+ [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
+ first, falling back to our code only if its results look suspicious.
+ Ensure that the resulting buffer is only as large as necessary.
+
+ * readutmp.c: Include readutmp.h first.
+ Include <errno.h>, since readutmp.h no longer does that.
+ * readutmp.h: Don't include <errno.h>,
+ <sys/param.h>, <time.h>; not needed to establish interface.
+ (errno): Remove decl.
+ (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
+ (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
+ UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
+
+2004-11-28 Simon Josefsson <jas@extundo.com>
+
+ * base64.h, base64.c: New file.
+
+2004-11-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getcwd.h: New file, which I forgot to check in on 2004-11-25.
+
+2004-11-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
+ HP's ANSI C compiler.
+ * fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
+ Declaring int functions causes warnings on some modern systems and
+ shouldn't be needed to compile on ancient ones.
+ * same.c (MIN) [defined MIN]: Don't define, since it's already
+ defined.
+
+ * getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
+ with the following changes.
+ (__set_errno): Parenthesize properly.
+ Include <stdbool.h>.
+ (MIN, MAX, MATCHING_INO): New macros.
+ (__getcwd): Define with prototype, not K&R form.
+ Use heuristics to allocate default buffer on stack if possible.
+ If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
+ behavior, and to avoid the PATH_MAX limit when computing
+ ../../../../...
+ Use MATCHING_INO to compare inode number to file.
+ Check for arithmetic overflow in size calculations.
+ Fix bug in reallocation of dot array that caused getcwd to fail
+ on directories nested deeper than 75.
+ Be more careful about saving errno on error.
+ Do not use realloc; use only free+malloc, as this is a bit
+ more flexible and avoids a needless copy operation.
+ Do not inspect st_dev and st_ino for symbolic links; POSIX
+ doesn't specify the latter.
+ Check for closedir errors.
+ Avoid needless casts.
+ Use "#ifdef weak_alias" around weak_alias, to be like other
+ glibc code.
+ The following changes to getcwd.c have effect only when used in
+ gnulib; they have no effect inside glibc proper.
+ (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
+ as alloca isn't used.
+ (alloca, __alloca): Likewise.
+ [!_LIBC]: Include "getcwd.h", "mempcpy.h".
+ Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
+ unconditionally, as gnulib assumes C89 or better.
+ Do not include <sys/param.h>.
+ (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
+ no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
+ better.
+ (NULL) [!defined NULL]: Remove; we assume C89 or better.
+ Include <dirent.h> in a way that is compatible with modern Autoconf.
+ (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
+ New macros, if not already defined.
+ Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
+ Use "_LIBC", not "defined _LIBC", for consistency.
+ (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
+ a mempcpy module.
+ (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
+ (GETCWD_RETURN_TYPE): Remove. All uses replaced by char *.
+ * xgetcwd.c: David MacKenzie's old code was removed, so give
+ credit only to Jim Meyering and adjust the copyright dates.
+ Do not include <limits.h>, <stdio.h>, <sys/types.h>,
+ <stdlib.h>, <unistd.h>, "pathmax.h".
+ Instead, include "xgetcwd.h" (first) and "getcwd.h".
+ (INITIAL_BUFFER_SIZE): Remove.
+ (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
+
+2004-11-23 Jim Meyering <jim@meyering.net>
+
+ * getopt_.h: Remove trailing blanks.
+
+2004-11-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ * utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
+ (futimens): New function, which uses futimes if available.
+ (futimens, utimens): Support timespec==NULL, with same semantics
+ as utime and utimens.
+ * utimens.h (futimens): New decl.
+
+2004-11-23 Jim Meyering <jim@meyering.net>
+
+ * __fpending.c: Add comment.
+
+2004-11-23 Sergey Poznyakoff <gray@Mirddin.farlep.net>
+
+ * getopt_.h: Re-addition of __getopt_argv_const caused
+ redefinition warnings. To avoid them, include the defines
+ in `#if !defined __need_getopt ... #endif'. The only place
+ where __getopt_argv_const is used is in definitions
+ of getopt_long and getopt_long_only below, which are as well
+ protected by `#ifndef __need_getopt'.
+ [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
+ __need_getopt after including <stdio.h> and <unistd.h> These
+ headers might have defined it.
+
+2004-11-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ * getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
+ New macros.
+ (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
+ optopt): Use them instead of invoking ## directly; otherwise, the
+ symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
+
2004-11-19 Bruno Haible <bruno@clisp.org>
* strtok_r.c: Move comments from here...
with MAXSIZE.
2004-11-02 Derek R. Price <derek@ximbiot.com>
- and Paul Eggert <eggert@cs.ucla.edu>
+ and Paul Eggert <eggert@cs.ucla.edu>
* getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
(get_date): Overparenthesize to avoid GCC warning.
2004-11-01 Paul Eggert <eggert@cs.ucla.edu>
- * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
+ * getpass.c (fflush_unlocked, flockfile, funlockfile)
(funlockfile, fputs_unlocked, putc_unlocked): Don't define if
already declared.
* snprintf.c (snprintf): Handle size==0.
2004-10-01 Simon Josefsson <jas@extundo.com>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
* snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
(snprintf): Declare 'args'.
Problem reported by Dan Jacobson.
2004-06-01 Paul Eggert <eggert@cs.ucla.edu>
- and Jim Meyering <jim@meyering.net>
+ and Jim Meyering <jim@meyering.net>
Merge from coreutils CVS.
Don't try to source the system alloca.h since it will not be found
and to prevent recursively including its replacement.
* fnmatch.c: Include <alloca.h> instead of opencoding.
- * lib/regex.c: Likewise.
+ * regex.c: Likewise.
2004-05-16 Derek Price <derek@ximbiot.com>
Paul Eggert <eggert@cs.ucla.edu>
* getndelim2.c (getndelim2): Upon realloc failure, don't leak memory.
2004-04-20 Jim Meyering <jim@meyering.net>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
* localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
memory when realloc fails.
* getopt.h: Sync with libc CVS.
2004-03-18 Paul Eggert <eggert@twinsun.com>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
* mbswidth.h: Include <wchar.h> only if HAVE_DECL_MBSWIDTH_IN_WCHAR_H,
not on all platforms that have <wchar.h>.
* argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
2003-11-23 Paul Eggert <eggert@twinsun.com>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
* printf-parse.h: Don't include sys/types.h.
(ARG_NONE): New macro.
Reported by Geoff Collyer via Arnold Robbins.
2003-11-16 Paul Eggert <eggert@twinsun.com>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
Protect against address arithmetic overflow.
* printf-args.h: Include stddef.h.
* linebuffer.c: Include <string.h> for declaration of memset.
2003-10-30 Paul Eggert <eggert@twinsun.com>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
* vasprintf.c: Include <limits.h>, <stdlib.h>.
(vasprintf): Fail if the resulting length doesn't fit in an 'int'.
* version-etc-2.c: Remove file.
2003-09-25 Jim Meyering <jim@meyering.net>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
This lets translators provide better translations for the
"Written by ..." part of --version output.
* xgetdomainname.c: New file.
2003-09-25 Simon Josefsson <jas@extundo.com>
- Bruno Haible <bruno@clisp.org>
+ Bruno Haible <bruno@clisp.org>
* getdomainname.h: New file.
* getdomainname.c: New file.
shell quoting style.
-Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
- Free Software Foundation, Inc.
+Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.