X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2FChangeLog;h=08659a34df71ca9150dadf6abbe7980c95a18cea;hb=f5200a50fa42fdaed40ecc67b27f41be328a6a01;hp=5da01ef920923b1df6539ee41fc7cfb42eef2981;hpb=f49d92a13f08f505fe855afce40f173a6e7c922c;p=gnulib.git diff --git a/lib/ChangeLog b/lib/ChangeLog index 5da01ef92..08659a34d 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,7 +1,708 @@ +2004-10-07 Bruno Haible + + * snprintf.c (snprintf): Avoid a memory allocation if the result fits + into the provided buffer. + +2004-10-06 Paul Eggert + + * diacrit.c, diacrit.h: Add GPL notice. + + * atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL notice. + * atanl.c (atanl): Keep the code as similar to glibc as possible. + * logl.c (logl): Keep the code as similar to glibc as possible. + This avoids a potential constant-folding bug. + +2004-10-05 Bruno Haible + + * strsep.h: Don't declare strsep() if HAVE_STRSEP. + +2004-10-04 Paul Eggert + + * xalloc.h (xmemdup): Renamed from xclone. All uses changed. + * xmalloc.c (xmemdup): Likewise. + * xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC, + XFREE): Remove these long-obsolescent macros. + * xmalloc.c (xstrdup): Implementation moved here from xstrdup.c + * xstrdup.c: Remove. + + * regex.c (re_comp): Cast gettext return value to char *, + Problem reported by Martin Neitzel via Mark D. Baushke. + +2004-10-04 Simon Josefsson + + * error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of + '#ifdef USE_UNLOCKED_IO'. + +2004-10-04 Paul Eggert + + * argmatch.c, closeout.c, error.c, exclude.c, getdate.y, + getndelim2.c, getpass.c, getusershell.c, linebuffer.c, + md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c, + regex.c, sha1.c, version-etc.c, yesno.c: + Include "unlocked-io.h" only if USE_UNLOCKED_IO. + * unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now + the includer's responsibility. + + Sync from coreutils. + + * modechange.c (mode_compile): Don't decrement a pointer that + points to the start of a string, as the C Standard says the + resulting behavior is undefined. + + * backupfile.h (enum backuptype): Rename none -> no_backups, + simple -> simple_backups, numbered_existing -> + numbered_existing_backups, numbered -> numbered_backups + to avoid shadowing problems. All uses changed. + * argmatch.c (enum backuptype) [defined TEST]: Likewise. + * backupfile.c (check_extension, numbered_backup): + Rename locals to avoid shadowing 'basename'. + * backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than + once. + + * .cppi-disable: Add getopt_.h, getopt_int.h. + * .cvsignore: Add getopt.h. + +2004-10-04 Simon Josefsson + + * memmem.h: New file. + * memmem.c: New file, taken from glibc. + +2004-10-02 Jim Meyering + + * dirfd.h, getpagesize.h: Add copyright notice. + +2004-10-01 Paul Eggert + + * snprintf.c: Remove comments as to why each header is needed. + +2004-10-01 Yoann Vandoorselaere + + * strsep.h: New file. + * strsep.c: New file. + +2004-10-01 Simon Josefsson + + * snprintf.c (snprintf): Handle size==0. + +2004-10-01 Simon Josefsson + Bruno Haible + + * snprintf.c: Include , , . + (snprintf): Declare 'args'. + +2004-09-30 Simon Josefsson + + * snprintf.h, snprintf.c: New files. + +2004-09-30 Sergey Poznyakoff + + * argp-help.c (canon_doc_option): Fixed coredump if *name==NULL + (hol_entry_help): Never translate an empty string. + Do not translate option tag (opt->name) if OPTION_NO_TRANS is set + * argp.h (OPTION_NO_TRANS): New option. + +2004-09-29 Oskar Liljeblad + + * xvasprintf.c: Include xalloc.h. + (xvasprintf): Use xalloc_die, not xmalloc_die. + +2004-09-28 Paul Eggert + + * dummy.c: Change copyright notice to FSF, and license to GPL. + +2004-09-13 Paul Eggert + + * argp-pvh.c (argp_program_version_hook): Provide initial value. + Problem reported by Bruno Haible in: + http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html + +2004-09-11 Paul Eggert + + * mempcpy.h: Wrap the entire include file inside #ifndef mempcpy, + in case some system header has #define'd it. Problem reported by + Soeren D. Schulze in + . + +2004-09-08 Bruno Haible + + * stdint_.h.in: New file, taken from GNU clisp. + +2004-09-08 Oskar Liljeblad + + * xvasprintf.h: New file. + * xvasprintf.c: New file. + * xasprintf.c: New file. + +2004-09-08 Bruno Haible + + * vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting length + is > INT_MAX. + * vasprintf.c (vasprintf): Don't test for length > INT_MAX any more. + +2004-08-19 Paul Eggert + + Import from coreutils. + * userspec.c: Don't use , so that we don't use alloca on + strings on unbounded length. alloca's performance benefits aren't + that important here. + (V_STRDUP): Remove. + (parse_with_separator): New function, with most of the internals + of the old parse_user_spec. Allow user to omit both user and group, + for compatibility with FreeBSD. + Clone only the user name, not the entire spec. + Do not set *uid, *gid unless entirely successful. + Avoid memory leak in some failing cases. + Fix regression for USER.GROUP reported by Dmitry V. Levin in + + (parse_user_spec): Rewrite to use parse_with_separator. + +2004-08-12 Paul Eggert + + * argp-help.c, argp-parse.c: Use "gettext.h" instead of + its complicated substitute. + * argp-help.c: Include , for program_invocation_short_name + and program_invocation_name. + (__argp_basename) [!_LIBC]: Remove; the only use was + replaced by its body. + (__argp_short_program_name): Change condition from + !defined __argp_short_program_name to + ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME), + to match argp-namefrob.h. + (__argp_failure): Don't assume strerror_r returns char *. + * argp-parse.c (N_): Define unconditionally. + (argp_default_options): Fill out initializers with 0 to avoid + gcc warnings. + +2004-08-12 Simon Josefsson + + * getopt.c, getopt1.c: Remove ELIDE_CODE hack. + * getopt_.h: Renamed from getopt.h. + +2004-08-11 Paul Eggert + + Merge from coreutils. + + * fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing + wmemchr or wmemcpy. Problem reported by Robert Dahlem + for Reliant Unix 5.43. + + * obstack.c: Include and if available. + (union fooround): Use uintmax_t, not long int. + The rest is a merge from libc: + [defined _LIBC]: Include . + (_obstack) [defined _LIBC]: Remove after 2.3.4. + + * settime.c (settime): Recode to avoid warning with Sun Forte C 6U2. + + * strverscmp.c: Convert to UTF-8. + +2004-08-09 Paul Eggert + + * obstack.h (obstack_empty_p): + Don't assume that chunk->contents is suitably aligned. + * obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk): + Likewise. Problem reported by Benno in + . + + * chown.c (rpl_chown): Work even if the file is writeable but not + readable. This could be improved further but it'd take some work. + +2004-08-08 Simon Josefsson + + * xgethostname.c: Don't include error.h (not used). + + * getpass.h: Add. + * getpass.c: Include getpass.h first. + +2004-08-08 Paul Eggert + + * xalloc-die.c: New files. + * xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove. + All uses removed. + * xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted): Likewise. + Move inclusions of gettext.h, error.h, exitfail.h to xalloc-die.c. + (_, N_, xalloc_die): Move to xalloc-die.c. + * userspec.c (parse_user_spaec): Use xstrdup rather than strdup, + so that we needn't mess with xalloc_msg_memory_exhausted. + + * sha1.h: Renamed from sha.h. + (SHA1_H): Renamed from _SHA_H. + (sha1_ctx): Renamed from sha_ctx. + (sha1_init_ctx): Renamed from sha_init_ctx. + (sha1_process_block): Renamed from sha_process_block. + (sha1_process_bytes): Renamed from sha_process_bytes. + (sha1_finish_ctx): Renamed from sha_finish_ctx. + (sha1_read_ctx): Renamed from sha_read_ctx. + (sha1_stream): Renamed from sha_stream. + (sha1_buffer): Renamed from sha_buffer. + * sha1.c: Likewise; renamed from sha.c. + Do not include . + Include rather than . + +2004-08-08 Bruno Haible + + * pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from + FILESYSTEM_PREFIX_LEN. + * progreloc.c: Likewise. + * concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN. + +2004-08-06 Paul Eggert + + Merge from tar. + * argp-help.c (make_hol, hol_append): Don't assume that + SIZE_MAX is a valid preprocessor constant. + (__argp_basename): Change from "#ifndef _LIBC" + to "#ifndef __argp_short_program_name", so that + we don't compile these functions for tar. + + More merges from coreutils. + * raise.c, readtokens0.h, readtokens0.c, strftime.h, utimens.h, + utimens.c, utimecmp.h, utimecmp.c, xnanosleep.h, xnanosleep.c, + yesno.h: New files. + * addext.c: Remove; no longer needed. + * yesno.c, argmatch.h, argmatch.c, backupfile.h, backupfile.c, + euidaccess.c, filemode.c, closeout.c, dup2.c, exclude.c, + fileblocks.c, filemode.c, fnmatch.c, fnmtahc_loop.c, + fopen-safer.c, fsusage.c, fsusage.h, ftruncate.c, full-write.c, + getdate.y, getloadavg.c, getugroups.c, hard-locale.c, hard-locale.h, + hash.c, human.c, human.h, lchown.c, lchown.h, makepath.c, makepath.h, + md5.c, md5.h, memchr.c, memcoll.c, memrchr.c, modechange.c, + modechange.h, mountlist.c, mountlist.h, nanosleep.c, posixtm.c, + putenv.c, quotearg.c, quotearg.h, readtokens.c, readutmp.c, + readutmp.h, rmdir.c, safe-read.c, save-cwd.c, savedir.c, setenv.c, + sig2str.c, stat.c, strtoimax.c, strverscmp.c, userspec.c, utime.c, + version-etc.c., xgethostname.c, xmemcoll.c, xreadlink.c, xstrtod.c, + xstrtod.h, xstrtoimax.c, xstrtol.c, xstrtol.h, xstrtoumax.c: + Import changes from coreutils. + +2004-08-05 Paul Eggert + + Merge from coreutils. + + * .gdb-history: Remove; this doesn't belong here. + + * c-strtod.c, c-strtod.h, c-strtold.c, cycle-check.c, + cycle-check.h, dev-ino.h, canonicalize.h, canonicalize.c, + fcntl-safer.h, fcntl-safer.c, getcwd.c: New files. + + * dirname.h: Include . + (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN, + for consistency with POSIX terminology. All uses changed. + (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros. + (strip_trailing_slashes): Use bool for booleans. + * stripslash.c (strip_trailing_slashes): Likewise. + + * error.c: Work around bug in OpenBSD 3.4 sterror_r: it + sometimes returns a positive errno value even when it succeeds. + (print_errno_message) [!LIBC]: Fall back on strerror if + __strerror_r fails. + + * path-concat.c (mempcpy): Don't define if a system header defines it. + Don't include stdio.h, stdlib.h, unistd.h, strdup.h. + (longest_relative_suffix): New function. + (path_concat): Use it. Assume first argument is not NULL. + Port to DOS. Omit redundant separators. + Report an error instead of returning NULL. + Use mempcpy instead of memcpy. + (xpath_concat): Remove: not declared or used. + + * same.h: Include + (same_name): Return bool, not int. + * same.c (same_name): Likewise. + (errno): Don't declare; we assume C89 or better now. + + * stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros, + if not already defined. + + * xgetcwd.c (errno): Don't declare; we assume C89 or better now. + * dup-safer.c (errno): Likewise. + +2004-08-03 Paul Eggert + + * fatal.c, fatal.h: Remove as the "fatal" module wasn't used or + working. + +2004-08-03 Simon Josefsson + + * strdup.h: Only use HAVE_DECL_STRDUP if defined. + * progname.h: Don't include stdbool.h. + +2004-08-02 Simon Josefsson + + * getsubopt.h: New file, with comments from Bruno Haible. + * getsubopt.c: New file, from glibc, but slightly modified based on + suggestions from Paul Eggert . + +2004-08-01 Simon Josefsson + + * xgetdomainname.c: Include stdlib.h, for free(). + +2004-07-16 Simon Josefsson + + * dummy.c: New file. + +2004-07-16 Bruno Haible + + * backupfile.h: Add extern "C" for C++. + * closeout.h: Likewise. + * copy-file.h: Likewise. + * findprog.h: Likewise. + * full-write.h: Likewise. + * pathname.h: Likewise. + * progname.h: Likewise. + * stpcpy.h: Likewise. + * stpncpy.h: Likewise. + * strcase.h: Likewise. + * strstr.h: Likewise. + * xalloc.h: Likewise. + + * mbswidth.h: Add extern "C" for C++. + Reported by Albert Chin-A-Young . + +2004-07-09 Simon Josefsson + + * getndelim2.c: Include stddef.h, for ptrdiff_t. (FreeBSD 4.9 + failed without this.) + +2004-07-09 Paul Eggert + + * fchown-stub.c: New file. + +2004-06-24 Jim Meyering + + * obstack.h (obstack_base): Cast to (void *), per documentation. + +2004-06-22 Paul Eggert + + * argz.c, argz_.h: New files, which are autoupdated from libtool. + +2004-06-01 Jim Meyering + + * calloc.c: New file. + +2004-06-06 Paul Eggert + + * getdate.y (yylex): Allow space between sign and number. + Problem reported by Dan Jacobson. + +2004-06-01 Paul Eggert + and Jim Meyering + + Merge from coreutils CVS. + + * stat-macros.h: New file, with contents from file-type.h + and coreutils' system.h. + * file-type.c: Include "stat-macros.h". + * file-type.h (file_type): Move all macro definitions to new file, + stat-macros.h. + + * chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]: + Wrap old code with this conditional. + [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown + function that does not dereference symlinks. + * lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown. + + * xreadlink.c: Include xreadlink.h first, to catch .h file + dependency problems. + (xreadlink): Accept new arg SIZE, for efficiency. + All decls and uses changed. + * xreadlink.h: Include , for size_t. + + * .cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h, + gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h. + + * .cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h, sysexits.h. + +2004-05-30 Paul Eggert + + * xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these + macros to be defined. + (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if + the allocator returns NULL because the requested size is zero. + +2004-05-20 Paul Eggert + + * malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this + var. Add comment explaining why libc still defines it. This + merges the following patch from glibc: + http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html + +2004-05-19 Paul Eggert + + * obstack.c (_obstack): Remove unused variable. It hasn't been + present in glibc since revision 1.1 of this file. + * obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast, + obstack_alignment_mask, obstack_alloc, obstack_base, + obstack_blank, obstack_blank_fast, obstack_chunk_size, + obstack_copy, obstack_copy0, obstack_finish, obstack_grow, + obstack_grow0, obstack_init, obstack_int_grow, + obstack_int_grow_fast, obstack_make_room, obstack_memory_used, + obstack_next_free, obstack_object_size, obstack_ptr_grow, + obstack_ptr_grow_fast, obstack_room): Remove declarations of + nonexistent functions. + +2004-05-17 Derek R. Price + Paul Eggert + + * argp-help.c, argp-parse.c: Assume rather than freecoding. + +2004-05-14 Bruno Haible + + * vasnprintf.c (VASNPRINTF): Correctly handle the case of a precision + that consists of a '.' followed by an empty digit string. + Patch by Tor Lillqvist . + +2004-05-17 Paul Eggert + + Port obstack to the AS/400, where pointers are 16 bytes wide and + you cannot cast an integer to a valid pointer. This patch is + currently waiting to be integrated into glibc; see + . + + * obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove. + All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN. + (__BPTR_ALIGN, __PTR_ALIGN): New macros. + (struct obstack): temp member is now a union of a pointer and + an integer, instead of an integer. All integer uses changed. + This does not affect the physical layout of struct obstack, + except on hosts (like the AS/400) where the size or alignment of + void * is greater than that of ptrdiff_t. + (obstack_finish) [! (defined __GNUC__ && defined __STDC__ && + __STDC__)]: Store temporary in pointer member of union, not + integer member. + * obstack.c: Include , for offsetof. + (struct fooalign): Remove; it doesn't need a name. + (union fooround): Change double to long double, and add void *. + (DEFAULT_ALIGNMENT): Use offsetof to compute. + (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant, + not a macro. Hence the values are always int; so remove all + casts-to-int in uses. + +2004-05-16 Paul Eggert + Derek Price + + * alloca.c: Include , to get our interface. + * alloca_.h: Use __alloca on AIX, so that we don't have to + include first. Use C89 prototype for alloca; this + requires including for size_t. Use extern "C" if C++. + Use #elif for simplicity, since we can assume C89 now. + 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 instead of opencoding. + * lib/regex.c: Likewise. + +2004-05-16 Derek Price + Paul Eggert + + getline cleanup. This changes the getndelim2 API: both order of + arguments, and meaning of delim2 (now uses EOF, not 0, to indicate + no delimiter). + + * getline.c: Don't include stddef.h or stdio.h, since our + interface does that. + (getline): Always use getdelim, so that we don't have two + copies of this code. + * getndelim2.c: Include , , + if available. + (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined. + (GETNDELIM2_MAXIMUM): New macro. + (getndelim2): Reorder arguments. delim==EOF now means no delimiter, + instead of the old practice of delim2==0. All callers changed. + Return -1 on overflow, instead of returning junk. + Do not set *linesize unless allocation succeeds. + * getndelim2.h: Do not include stddef.h; no longer needed, now + that we include sys/types.h. + * getnline.h: Likewise. + * getndelim2.h (GETNLINE_NO_LIMIT): New macro. + (getndelim2): Reorder arguments. + * getnline.c (getnline, getndelim): + Don't discard the NMAX argument. + (getnline): Invoke getndelim, to avoid code duplication. + * getnline.h (GETNLINE_NO_LIMIT): New macro, used instead + of (size_t) -1 by callers of the getnline family. + +2004-05-13 Paul Eggert + + * nanosleep.c (suspended): Change its type from int to + sig_atomic_t volatile. + (first_call): Make it private to rpl_nanosleep, and have it + be zero initially as that's a bit faster. + (my_usleep): Round up fractional times instead of truncating them, + as this is the usual meaning for 'sleep'. + + * gettime.c (gettime): Fall back on `time' if `gettimeofday' + doesn't work. + * settime.c: Include , for stime (on Solaris 8, anyway). + (ENOSYS): Define if not defined. + (settime): Fall back on stime if it exists and settimeofday fails. + But don't bother with fallbacks if a method fails with errno == EPERM. + +2004-05-11 Jim Meyering + + Prior to this change, the save_cwd caller required read access to the + current directory on most systems (ones with the fchdir function). + + * save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only + fails, try write-only, and finally, resort to using xgetcwd. + +2004-05-06 Paul Eggert + + * obstack.c, obstack.h: Import changes from libc. + +2004-04-28 Bruno Haible + + * findprog.c (find_in_path): Treat Cygwin like Windows, since it also + implicitly appends .exe to executables. + * localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now + accepts Windows pathnames. + * pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): Treat + Cygwin like Windows, since it now accepts Windows pathnames. + * progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): Treat + Cygwin like Windows, since it now accepts Windows pathnames. + Reported by Derek Robert Price . + +2004-04-20 Jim Meyering + + * getndelim2.c (getndelim2): Upon realloc failure, don't leak memory. + +2004-04-20 Jim Meyering + Bruno Haible + + * localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak + memory when realloc fails. + +2004-04-18 Jim Meyering + + * readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc failure, + don't leak memory and do call END_UTMP_ENT. + +2004-04-11 Paul Eggert + + * inttostr.h: Include unconditionally, since we assume C89. + (CHAR_BIT): Remove, since we assume C89. + Include if available, as per current Autoconf CVS advice. + +2004-03-30 Paul Eggert + + * cloexec.h, cloexec.c (set_cloexec_flag): Return int + not bool, to be more consistent with Unix conventions. + Suggested by Bruno Haible. + + Merge from coreutils. + + * imaxtostr.c, inttostr.c, inttostr.h, offtostr.c, umaxtostr.c: + New files. + + * getdate.h: Include stdbool.h, and timespec.h instead of + the usual dance. + (get_date): Change signature to support fractional time stamps. + All callers changed. + * getdate.y: Include "getdate.h" first, as we can now + assume C89 and don't need to worry about 'const'. + Similarly, include "unlocked-io.h" near start, not in middle. + Include . + (textint.value): Use long int rather than int. + (textint.digits): Use size_t rather than int. + (BILLION, LOG10_BILLION): New constants. + (parser_control): New member rel_ns. Members day_ordinal, + time_zone, month, day, hour, minutes, rel_year, rel_month, + rel_day, rel_hour, rel_minutes, rel_seconds + are now long int, not int. Member seconds is now struct timespec, + not int. New member timespec_seen. Members dates_seen, days_seen, + local_zones_seen, rels_seen, times_seen, zones_seen are now size_t, + not int. + (%union.intval): Now long int, not int. + New member timespec. + (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens. + (seconds, signed_seconds, unsigned_seconds): New nonterminals. + (spec): Now is a timespec or an item list. + (timespec, items): New nonterminals. + (time, rel, relunit, number, get_date): + Add support for fractional seconds. + (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax. + (gmtime, localtime, mktime): Remove decls; not needed with C89. + (to_hour): First arg is now long int, not int. + (to_year): Returns long int, not int. + Don't treat year -70 like 70. + (tm_diff): Returns long int, not int. + (lookup_word): Use bool instead of int when appropriate. + (yylex): Use size_t for count, not int. + Detect overflow when parsing large integer constants. + Add support for fractions. + (get_date): Make pointers 'const' if possible. + Use more-portable code to detect integer overflow. + (main) [TEST]: Adjust to above changes. Test for localtime failure. + Don't use ctime; it's not reliable if the year has >4 digits. + + * human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set. + This is for compatibility with BSD. + + * timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define. + (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise. + From coreutils' system.h. + + * userspec.c: Don't include "posixver.h". + (parse_user_spec): Fall back on USER.GROUP parsing, regardless + of POSIX version, as POSIX 1003.1-2001 allows that behavior as a + compatible extension. Simplify code by removing a boolean int + that was always nonzero if a string was nonnull. + +2004-03-30 Jim Meyering + + Merge from coreutils. + + * mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h. + + * readtokens.c (readtoken): Don't leak 64 bytes when reading + an empty input stream. + + * readtokens.c: Include . + (readtoken): Use `size_t' rather than int/long. + All callers adjusted. + Use `bool' rather than `int' where appropriate. + Use memset rather than an explicit loop. + Use x2nrealloc rather than xrealloc. + Allow the use of `\0' as a delimiter. + (readtokens): Likewise. + * readtokens.h (readtoken, readtokens): Update prototypes. + +2004-03-30 Bruno Haible + + * getloadavg.c (getloadavg): Don't assume setlocale returns + nonnull. + +2004-03-29 Paul Eggert + + Merge changes to getloadavg.c from coreutils and Emacs. + + * getloadavg.c [!defined HAVE_SETLOCALE] (setlocale): + Define to an expression, not to the empty string. + Include cloexec.h and xalloc.h. + (getloadavg): Restore LC_NUMERIC locale after setting it temporarily. + Use set_cloexec_flag rather than rolling our own. + * cloexec.c, cloexec.h: New files. + +2004-03-18 Paul Eggert + + * getopt.h: Sync with libc CVS. + +2004-03-18 Paul Eggert + Bruno Haible + + * mbswidth.h: Include only if HAVE_DECL_MBSWIDTH_IN_WCHAR_H, + not on all platforms that have . + * mbswidth.c: Include and before . + +2004-03-09 Paul Eggert + + * argp-parse.c, getopt.c, getopt.h, getopt1.c: + Sync with libc CVS. + * getopt_int.h: New file, also synced from libc. + 2004-03-07 Paul Eggert * c-stack.c (SIGACTION_WORKS): New macro. Use it instead of long - '#if' expressions. Unlike the code it replaces, it it does not + '#if' expressions. Unlike the code it replaces, it does not depend on (defined _SC_PAGESIZE). However, it does depend on HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug first reported by Jason Andrade in @@ -564,17 +1265,17 @@ 2003-10-12 Paul Eggert - * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls. + * xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls. (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate, and define in terms of the other primitives. - * lib/xmalloc.c: Include stdbool.h; do not include exit.h. + * xmalloc.c: Include stdbool.h; do not include exit.h. (SIZE_MAX): Define if not already defined. (array_size_overflow): New function. (xalloc_die): Abort instead of exiting if 'error' returns. (xnmalloc, xnrealloc, xzalloc, xclone): New functions. (xmalloc, xrealloc): Use them. (xcalloc): Check for address arithmetic overflow. - * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be + * xstrdup.c (xstrdup): Use xclone, since memcpy should be a bit faster than strcpy. 2003-10-08 Paul Eggert @@ -1366,11 +2067,11 @@ Merge some files from coreutils. These changes were originally made by Jim Meyering. - * lib/acl.c: Include before ; + * acl.c: Include before ; many older Unixes require this. - * lib/alloca.c (alloca): Remove cast to argument of free; + * alloca.c (alloca): Remove cast to argument of free; no longer needed in C89. - * lib/alloca_.h, lib/regex.h: Fix white space to match + * alloca_.h, regex.h: Fix white space to match what GNU indent does. 2003-08-05 Paul Eggert @@ -4851,6 +5552,8 @@ alert, backslash, formfeed, and vertical tab unnecessarily in shell quoting style. -Local Variables: -version-control: never -End: + +Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 + 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.