645fa5d8b3ae9c3c958b48d860a18c6a5bc0d751
[gnulib.git] / lib / ChangeLog
1 2001-09-25  Volker Borchert  <bt@teknon.de>
2
3         * gettimeofday.c (rpl_gettimeofday): Declare local variable `result'.
4
5 2001-09-23  Jim Meyering  <meyering@lucent.com>
6
7         * mountlist.c: Remove useless parentheses in #if directives.
8         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
9         the deprecated MOUNTED symbol is no longer defined in mntent.h.
10
11 2001-09-22  Jim Meyering  <meyering@lucent.com>
12
13         * localcharset.c: Update from latest gettext.
14         * config.charset: Likewise.
15
16 2001-09-20  Jim Meyering  <meyering@lucent.com>
17
18         * xstrtol.c (strtoimax): Guard declaration with
19         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
20         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
21         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
22         (strtoumax): Likewise, for completeness (it wasn't necessary).
23
24 2001-09-06  Paul Eggert  <eggert@twinsun.com>
25
26         * strtoimax.c (HAVE_LONG_LONG):
27         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
28         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
29         to work around bug in IBM C compiler.
30
31 2001-09-16  Jim Meyering  <meyering@lucent.com>
32
33         * mkdir.c: New file.
34
35 2001-09-04  Paul Eggert  <eggert@twinsun.com>
36
37         * xgetcwd.c: Revert some of the previous change; intead,
38         fix the HAVE_GETCWD_NULL code to behave more like the
39         !HAVE_GETCWD_NULL code used to.
40
41         Include "xalloc.h".
42         (xgetcwd): Do not return NULL when memory is exhausted; instead,
43         invoke xalloc_die.
44
45 2001-09-04  Paul Eggert  <eggert@twinsun.com>
46
47         * xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
48         Use ssize_t, not int, to store result of readlink.
49         Check for ssize_t overflow as well as size_t overflow,
50         as POSIX says the result of readlink is implementation-defined
51         when ssize_t overflows.
52         Remove unnecessary cast to char*.
53         Use free+malloc instead of realloc, as the storage doesn't need
54         to be preserved and it's clearer and can be more efficient that way.
55         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
56         * xreadlink.h (xreadlink): Update prototype.
57
58 2001-09-03  Paul Eggert  <eggert@twinsun.com>
59
60         * exclude.c (fnmatch_no_wildcards): Fix confusion between
61         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
62         spotted by Jim Meyering.
63
64 2001-09-03  Jim Meyering  <meyering@lucent.com>
65
66         * xreadlink.c (xreadlink): Preserve errno around `free' during failure.
67
68 2001-09-03  Paul Eggert  <eggert@twinsun.com>
69
70         * xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
71         like the HAVE_GETCWD_NULL code.
72         Include pathmax.h if not HAVE_GETCWD.
73         Do not include xalloc.h.
74         (INITIAL_BUFFER_SIZE): New symbol.
75         Do not use xmalloc / xrealloc, since the caller is responsible for
76         handling errors.  Preserve errno around `free' during failure.
77         Do not overrun buffer when using getwd.
78
79 2001-09-03  Paul Eggert  <eggert@twinsun.com>
80
81         * xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
82         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use getcwd (NULL, 0).
83
84 2001-09-02  Jim Meyering  <meyering@lucent.com>
85
86         * error.c: Update from GNU libc.
87
88 2001-09-01  Jim Meyering  <meyering@lucent.com>
89
90         * xreadlink.c: New file.
91         * xreadlink.h: New file.
92         * Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and xreadlink.h.
93
94         * regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
95         doesn't conflict with sparc-sun-solaris2.7's definition in
96         /usr/include/sys/int_types.h.
97
98         * exclude.c: Use `""', not `<>' to #include non-system header files.
99         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
100         and strncasecmp as r-values.  Unixware didn't have declarations.
101
102 2001-08-31  Jim Meyering  <meyering@lucent.com>
103
104         * xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
105         Use an initial, malloc'd, buffer of length 128 rather than
106         a statically allocated one of length 1024.
107
108 2001-08-30  Paul Eggert  <eggert@twinsun.com>
109
110         * lib/xgetcwd.c: Don't include pathmax.h.
111         Include stdlib.h and unistd.h if available.
112         Include xalloc.h.
113         (xmalloc, xstrdup, free): Remove decls.
114         (xgetcwd): Don't assume sizes fit in unsigned.
115         Check for overflow when computing sizes.
116         Simplify reallocation code.
117
118 2001-08-28  Paul Eggert  <eggert@twinsun.com>
119
120         * Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
121
122         * strtoimax.c: Renamed from strtoxmax.c, removing the
123         old strtoimax.c.
124
125         Also, make the following further changes to make this file's
126         configuration more similar to that of strtol.c:
127         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
128         (strtoumax, uintmax_t, strtoull, strtol): Remove.
129         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
130         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
131         changed to signed values.
132
133         And make the following changes as well:
134         Fix copyright notice, as 1999 was missing.
135         (verify): New macro.
136         (strtoimax): Check sizes at compile-time, not run-time.
137         Prefer strtol to strtoll if both work.
138         (main): Remove; it was not that useful and was a pain to maintain.
139
140         * strtoumax.c: Include strtoimax.c, not strtouxmax.c.
141
142 2001-08-30  Paul Eggert  <eggert@twinsun.com>
143
144         * savedir.c (savedir): Remove size parameter, as POSIX says that
145         a directory's st_size can have an arbitrary value, so the old
146         usage could waste an arbitrary amount of memory.  All uses
147         changed.
148         * savedir.h: Update prototype.
149
150 2001-08-30  Paul Eggert  <eggert@twinsun.com>
151
152         * xstrtol.c (strtoimax): New decl.
153
154 2001-08-28  Paul Eggert  <eggert@twinsun.com>
155
156         * xstrtol.h: Add copyright notice.
157         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
158         LONGINT_INVALID_SUFFIX_CHAR.
159
160 2001-08-30  Paul Eggert  <eggert@twinsun.com>
161
162         * quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
163         tm to be declared.
164
165 2001-08-30  Paul Eggert  <eggert@twinsun.com>
166
167         * hash.c: Remove '2001' from copyright notice.
168
169 2001-08-30  Paul Eggert  <eggert@twinsun.com>
170
171         * full-write.h: New file.
172         * Makefile.am (libfetish_a_SOURCES): Add full-write.h.
173         * full-write.c: Correct credits, as cccp.c no longer
174         exists and anyway it was so heavily changed from the old cccp
175         code as to be unrecognizable.  Include full-write.h.
176         (full_write) Return size_t, with short writes meaning failure.
177         All callers changed.  This fixes a bug with large buffers
178         on 64-bit hosts.
179         * utime.c: Include full-write.h.
180
181 2001-08-30  Paul Eggert  <eggert@twinsun.com>
182
183         Merge 'exclude' changes from tar 1.13.22.
184         This fixes one or two unlikely storage allocation overflow bugs,
185         but doesn't change user-visible behavior otherwise.
186
187 2001-08-30  Paul Eggert  <eggert@twinsun.com>
188
189         * exclude.c (bool): Declare, perhaps by including stdbool.h.
190         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
191         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
192         Include if available.
193         (<xalloc.h>): Include
194         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
195         (verify): New macro.  Use it to verify that EXCLUDE macros do not
196         collide with FNM macros.
197         (struct patopts): New struct.
198         (struct exclude): Use it, as exclude patterns now come with options.
199         (new_exclude): Support above changes.
200         (new_exclude, add_exclude_file):
201         Initial size must now be a power of two to simplify overflow checking.
202         (free_exclude, fnmatch_no_wildcards): New function.
203         (excluded_filename): No longer requires options arg, as the options
204         are determined by add_exclude.  Now returns bool, not int.
205         (excluded_filename, add_exclude):
206         Add support for the fancy new exclusion options.
207         (add_exclude, add_exclude_file): Now takes int options arg.
208         Check for arithmetic overflow when computing sizes.
209         (add_exclude_file): xrealloc might modify errno, so don't
210         realloc until after errno might be used.
211
212         * exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
213         New macros.
214         (free_exclude): New decl.
215         (add_exclude, add_exclude_file): Now takes int options arg.
216         (excluded_filename): No longer requires options arg, as the options
217         are determined by add_exclude.  Now returns bool, not int.
218
219 2001-08-30  Paul Eggert  <eggert@twinsun.com>
220
221         * alloca.c (alloca): Arg is of type size_t, not unsigned.
222
223 2001-08-27  Jim Meyering  <meyering@lucent.com>
224
225         * Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
226
227         * version-etc.c (N_): Remove definition.
228         Revert most of last change.
229         Instead, simply don't mark the `Copyright...' string for translation.
230         Based on advice from Paul Eggert.
231
232         * strtoxmax.c: Tweak comment.
233
234 2001-08-26  Jim Meyering  <meyering@lucent.com>
235
236         * version-etc.c (version_etc_copyright_fmt): Replace literal year
237         of copyright with `%s' so translators don't get an untranslated
238         message in 2002.
239         (COPYRIGHT_YEAR): Define.
240         (version_etc): Use fprintf rather than fputs.
241         Suggestion from Ulrich Drepper.
242
243         * Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
244
245         * strtoll.c: New file, from GNU libc.
246         * xstrtoimax.c: New file.
247
248         * xstrtol.h: Add xstrtoimax.
249         * strtoumax.c: New file.  Simply include "strtoumax.c".
250         * strtoimax.c: New file.  Likewise, but first define STRTOUXMAX_SIGNED.
251
252         * strtoumax.c: Factor to work both for unsigned and signed types, ...
253         * strtoxmax.c: ... then renamed to this.
254
255 2001-08-13  Paul Eggert  <eggert@twinsun.com>
256
257         * Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
258         Port to Solaris 8, where 'sed' requires a space after the 'r'
259         command, and where sh dislikes "$/".  Clean up the spacing a bit.
260         Redirect output to $tmp just once.
261
262 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
263
264         * addext.c (<errno.h>): Include.
265         (errno): Declare if not defined.
266         (addext): Work correctly when pathconf returns -1 and leaves
267         errno alone because there is no limit.  Also, work even if
268         pathconf returns a value greater than SIZE_MAX.
269
270 2001-08-12  Jim Meyering  <meyering@lucent.com>
271
272         * xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
273         Simply `return getcwd (NULL, 0);'.
274         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
275         Use 1300 as initial value for length, not PATH_MAX.
276
277         * pathmax.h: Clean up cpp syntax.
278
279 2001-08-12  Jim Meyering  <meyering@lucent.com>
280
281         * gettimeofday.c: New file.
282         * gtod.h: New file.
283         * Makefile.am (libfetish_a_SOURCES): Add gtod.h.
284
285 2001-08-04  Jim Meyering  <meyering@lucent.com>
286
287         * error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if stmt,
288         to get in sync with glibc.
289
290 2001-08-03  Paul Eggert  <eggert@twinsun.com>
291
292         The following changes are from gettext 0.10.39 as maintained by
293         Bruno Haible.
294
295         * mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
296         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
297         with inverted sense.  All uses changed.
298
299         * mbswidth.c: Don't include <limits.h>.
300         Include <stdlib.h> and <string.h> unconditionally.
301         (iswcntrl, mbsinit, ISCNTRL): New macros.
302         (mbsnwidth): Use K&R style function declarations.
303         Don't bother checking for MB_LEN_MAX == 1, since the compiler
304         can optimize it when MB_CUR_MAX == 1.
305         The width of control characters is zero, not 1.
306
307 2001-07-15  Jim Meyering  <meyering@lucent.com>
308
309         * Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
310         (BUILT_SOURCES): Add unlocked-io.h.
311         (io_functions): Define.
312         (unlocked-io.h): New rule.
313         (DISTCLEANFILES): Add unlocked-io.h.
314         (all-local): Depend on unlocked-io.h, to ensure it is created.
315
316         * unlocked-io.hin: New file
317
318         * regex.c: Update from glibc.
319
320 2001-07-05  Jim Meyering  <meyering@lucent.com>
321
322         * Makefile.am (noinst_HEADERS): Remove definition, per new automake
323         recommendation.
324         (libfetish_a_SOURCES): Put all .h files here instead.
325         Remove a thus-exposed (better checks in automake) duplicate and
326         two unnecessary .h files.
327
328 2001-06-11  Jim Meyering  <meyering@lucent.com>
329
330         * regex.c: Update from GNU libc.
331
332 2001-05-27  Jim Meyering  <meyering@lucent.com>
333
334         * readutmp.h (UT_TYPE): Define.
335
336 2001-05-24  Jim Meyering  <meyering@lucent.com>
337
338         * argmatch.c: Include "quote.h".
339         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
340         quote function.  Reported by Göran Uddeborg.
341
342 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
343
344         * dirname.c (dir_name): Compute append_dot using path, not newpath
345         which is not yet declared.
346
347 2001-05-11  Paul Eggert  <eggert@twinsun.com>
348
349         * Makefile.am (libfetish_a_SOURCES):
350         Add strftime.c, since we now compile it on all hosts.
351
352         * strftime.c (my_strftime):
353         Define to nstrftime if emacs, but only if my_strftime is not defined.
354         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
355         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
356         Add one more extra argument: a nanoseconds value.
357         All uses changed.
358         (ns): New macro.
359         (my_strftime function): Add %N format.
360         (emacs_strftimeu): Renamed from emacs_strftime,
361         with extra ut argument.
362
363 2001-05-11  Paul Eggert  <eggert@twinsun.com>
364
365         dirname code cleanup.  base_name now behaves more compatibly
366         with POSIX basename when given file names that have trailing
367         slashes, and similarly for dir_name.  Add new primitives
368         base_len and dir_len.  Put the directory-name-related decls
369         into dirname.h.
370
371         * addext.c (ISSLASH, base_name): Remove; now in dirname.h.
372         * backupfile.c (base_name): Likewise.
373         * basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
374         * dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
375         * makepath.c (strip_trailing_slashes): Likewise.
376         * path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN, ISSLASH):
377         Likewise.
378         * rename.c (strip_trailing_slashes): Likewise.
379         * same.c (base_name): Likewise.
380         * stripslash.c (ISSLASH): Likewise.
381
382         * addext.c: Include <dirname.h> after size_t is defined.
383         * backupfile.c: Likewise.
384
385         * addext.c (addext): Use base_len to trim redundant
386         trailing slashes instead of doing it ourselves.
387         But do not trim the last slash if it is not redundant.
388
389         * backupfile.c (find_backup_file_name,
390         max_backup_version): Use base_len instead of rolling it ourselves.
391         Handle the case of "" and (on DOS) "C:" correctly.
392
393         * basename.c: Do not include <stdio.h>, <assert.h>; no longer needed.
394         Include <string.h>, <dirname.h>.
395         (base_name): Allow file names ending in slashes, other than names
396         that are all slashes.  In this case, return the basename followed
397         by the slashes.  This is more general, and can be used in places
398         where the original base_name purposely had an assertion failure.
399         (base_len): New function.
400
401         * dirname.c: Include <string.h> instead of <stdlib.h>.
402         Do not include <assert.h>; no longer needed.
403         Include xalloc.h.
404         (memrchr): Remove decl.
405         (dir_name_r): Remove.
406         (dir_len): Renamed from dirlen.  All callers changed.
407         Rewrite in terms of base_name, for simplicity and consistency.
408         (dir_name): Never return NULL.  All callers changed.
409         Do not include <stdlib.h> in test program; no longer needed.
410         return 0; is fine for test program.
411
412         * dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
413         New macros.
414         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
415
416         * path-concat.c (path_concat): Use base_len to compute
417         base length, not strlen; this means we cannot rely on memcpy
418         to null-terminate.
419
420         * same.c (STREQ): Remove.
421         (same_name): Handle the case where the basename ends in trailing '/'.
422
423         * stripslash.c (strip_trailing_slashes): Return nonzero if
424         a slash was stripped.  Do not strip the last slash after a
425         file system prefix.
426
427 2001-04-08  Jim Meyering  <meyering@lucent.com>
428
429         * getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
430         recomputed; that's necessary when the offset spans a DST transition.
431         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
432
433 2001-04-02  Jim Meyering  <meyering@lucent.com>
434
435         * regex.h, regex.c: Update from GNU libc.
436
437 2001-03-19  Paul Eggert  <eggert@twinsun.com>
438
439         * version-etc.c (version_etc_copyright): Update to 2001.
440
441 2001-03-16  Paul Eggert  <eggert@twinsun.com>
442
443         * tempname.c (uint64_t): Define to uintmax_t if
444         not defined, and if UINT64_MAX is not defined.
445         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
446         Reported by John David Anglin.
447
448 2001-03-10  Bruno Haible  <haible@clisp.cons.org>
449
450         * localcharset.c (locale_charset): Allow wildcard syntax. Also resolve
451         alias if codeset is empty.
452         * config.charset (BeOS): Use wildcard syntax.
453
454 2001-03-13  Jim Meyering  <meyering@lucent.com>
455
456         * path-concat.c (path_concat) [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]:
457         Don't insert a backslash when concatenating e.g., `C:' and `foo'.
458         From Bruno Haible.
459
460 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
461
462         * localcharset.c (locale_charset): Don't use setlocale(LC_CTYPE,NULL).
463         Don't return NULL.
464         * unicodeio.c (print_unicode_char): Simplify accordingly.
465
466 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
467
468         * config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
469         support for DOS/DJGPP.
470
471 2001-02-28  Paul Eggert  <eggert@twinsun.com>
472
473         * Makefile.am (libfetish_a_SOURCES):
474         Add dup-safer.c, fopen-safer.c.
475         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
476
477         * dup-safer.c, fopen-safer.c, stdio-safer.h, unistd-safer.h: New files.
478
479 2001-02-25  Paul Eggert  <eggert@twinsun.com>
480
481         The mkstemp replacement is taken from glibc 2.2.2, with some
482         portability fixes for use outside glibc, as follows:
483
484         * tempname.c (struct_stat64): New macro.
485         (direxists, __gen_tempname): Use it.
486         This avoids a portability problem with Solaris 8.
487
488         * tempname.c (<config.h>): Include if HAVE_CONFIG_H.
489         (<stddef.h>, <stdint.h>, <string.h>):
490         Include only if STDC_HEADERS || _LIBC.
491         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
492         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
493         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
494         (__set_errno): Define this macro if <errno.h> doesn't.
495         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
496         Define these macros if <stdio.h> doesn't.
497         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
498         Define these macros if <sys/stat.h>
499         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
500         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
501         __xstat64): Define if not _LIBC.
502         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
503         (__gen_tempname): Invoke gettimeofday only if
504         HAVE_GETTIMEOFDAY || _LIBC;
505         otherwise, fall back on plain "time".
506         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
507
508         * mkstemp.c (__GT_FILE): Define to zero if not defined.
509
510         * mkstemp.c, tempname.c: New files, taken from glibc 2.2.2.
511
512 2001-02-17  Jim Meyering  <meyering@lucent.com>
513
514         * strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
515         around included file name.
516
517         * strnlen.c (__strnlen): Merge in a change from GNU libc.
518
519         * strftime.c: Update from GNU libc (the only changes were to comments).
520
521 2001-02-13  Bruno Haible  <haible@clisp.cons.org>
522
523         * mbswidth.h (mbswidth): Also define as macro, to avoid prototype clash.
524
525 2001-02-17  Paul Eggert  <eggert@twinsun.com>
526
527         * mbswidth.c, quotearg.c (mbrtowc, mbsinit):
528         Remove workaround macros for hosts that have mbrtowc but not
529         mbstate_t, as we now insist on proper declarations for both
530         before using mbrtowc.
531
532 2001-02-17  Jim Meyering  <meyering@lucent.com>
533
534         * regex.c: Update from libc.
535
536 2001-02-16  Paul Eggert  <eggert@twinsun.com>
537
538         * alloca.c (malloc): Undef before defining, since stdlib.h
539         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
540         Reported by Mark Hounschell via Paul Eggert.
541
542 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
543
544         * config.charset: Update for FreeBSD 4.2.
545
546 2001-01-26  Jim Meyering  <meyering@lucent.com>
547
548         * quotearg.c: Include stddef.h.
549         * quote.c: Include stddef.h.
550         Reported by Axel Kittenberger.
551
552         * xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
553         line in double quotes so that it evokes a better diagnostic.
554         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
555         Reported by Axel Kittenberger.
556
557 2001-01-15  Bruno Haible  <haible@clisp.cons.org>
558
559         * unicodeio.c (print_unicode_char): Cast the second iconv() arg,
560         to avoid a warning.  Add back 'const' to inptr.
561
562 2001-01-16  Jim Meyering  <meyering@lucent.com>
563
564         * basename.c: Include <stdio.h>, needed by assert on SunOS4.
565         From Bruno Haible.
566
567 2001-01-14  Jim Meyering  <meyering@lucent.com>
568
569         * rename.c: New file.  From Volker Borchert.
570         Include stdlib.h, string.h or strings.h, and xalloc.h.
571         Use strip_trailing_slashes rather than open-coding it.
572
573 2001-01-03  Paul Eggert  <eggert@twinsun.com>
574
575         * strftime.c: Sync with glibc time/strftime.c 1.81.
576
577 2001-01-03  Jim Meyering  <meyering@lucent.com>
578
579         * unicodeio.c (print_unicode_char): Remove `const' from declaration of
580         local `inptr' to avoid warning with some system declarations of iconv.
581
582 2000-12-29  Paul Eggert  <eggert@twinsun.com>
583
584         * modechange.c: Do not assume that mode_t uses the
585         traditional octal encoding.  E.g. "chmod 1 FOO" should set
586         the other-execute bit of FOO even if S_IXOTH != 1.
587
588         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
589         WOTH, XOTH, ALLM): New macros.
590         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
591          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
592         Use them.
593         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
594         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
595         (mode_compile):
596         No need to use uintmax_t; unsigned long is long enough.
597         Don't bother to get suffix since we don't use it.
598
599 2000-12-24  Jim Meyering  <meyering@lucent.com>
600
601         * hash.c (is_prime): Return explicit boolean values.
602         (hash_get_first): Return NULL to appease Irix5.6's 89.
603         Reported by Nelson Beebe.
604
605 2000-10-31  Bruno Haible  <haible@clisp.cons.org>
606
607         * localcharset.c (locale_charset): Add support for Win32.
608
609 2000-12-18  Paul Eggert  <eggert@twinsun.com>
610
611         * physmem.h, physmem.c: New files.
612
613         * Makefile.am (libfetish_a_SOURCES): Add physmem.c.
614         (noinst_HEADERS): Add physmem.h.
615
616         * xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
617         't' for compatibility with Solaris 8 sort.
618
619 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
620
621         * config.charset: Add support for BeOS.
622
623 2000-12-16  Jim Meyering  <meyering@lucent.com>
624
625         * getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
626         SHELLS_FILE to a file name that's useful on djgpp systems.
627         Include stdlib.h.
628         (ADDITIONAL_DEFAULT_SHELLS): Define.
629         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
630         Based mostly on a patch from Prashant TR.
631
632 2000-12-16  Jim Meyering  <meyering@lucent.com>
633
634         This bug had a serious impact on chown: `chown N:M FILE' (for integer
635         N and M) would have treated it like `chown N:N FILE'.
636
637         * userspec.c (parse_user_spec): Fix typo: s/u/g/.
638
639 2000-10-31  Bruno Haible  <haible@clisp.cons.org>
640
641         * config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB, VISCII,
642         CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256, CP1257
643         to the list of canonical encodings. Rename EUC-CN to GB2312.
644
645 2000-12-08  Andreas Schwab  <schwab@suse.de>
646
647         * mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
648         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
649
650 2000-12-07  Jim Meyering  <meyering@lucent.com>
651
652         * stripslash.c (ISSLASH): Define.
653         (strip_trailing_slashes): Use ISSLASH rather than comparing against `/'.
654         From Prashant TR.
655
656         * dirname.c (FILESYSTEM_PREFIX_LEN): Define.
657         (dir_name_r): Declare this function as static.
658         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
659         manifest itself on a name containing a mix of slashes and
660         backslashes.
661         Make this function work with names starting with a DOS-style
662         drive letter and colon prefix.
663         (dir_name): Append `.' if necessary.
664         Based mostly on patches from Prashant TR and Eli Zaretskii.
665
666         * dirname.h (dir_name_r): Remove prototype.
667
668 2000-12-05  Jim Meyering  <meyering@lucent.com>
669
670         * dirname.c (dir_name_r): Add `const' in a few local declarations.
671
672 2000-12-04  Jim Meyering  <meyering@lucent.com>
673
674         * path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
675         Also include memory.h, stdlib.h, unistd.h if appropriate.
676         Reported by Andreas Jaeger (conflicting declaration of malloc).
677
678 2000-12-02  Jim Meyering  <meyering@lucent.com>
679
680         * closeout.h: Make idempotent, to avoid some obscure warnings.
681
682 2000-12-01  Paul Eggert  <eggert@twinsun.com>
683
684         * memrchr.c: Include <config.h> before any system include file.
685
686 2000-11-29  Paul Eggert  <eggert@twinsun.com>
687
688         * dirname.c (dir_name_r): Fix typo: int -> size_t.
689
690 2000-11-26  Jim Meyering  <meyering@lucent.com>
691
692         * memcoll.c: Include sys/types.h.  From Werner Almesberger.
693
694 2000-11-22  Paul Eggert  <eggert@twinsun.com>
695
696         * strftime.c (my_strftime): Do not invoke mbrlen with a
697         size of (size_t) -1; it's not portable.
698
699 2000-11-17  Akim Demaille  <akim@epita.fr>
700
701         * obstack.h: Formatting changes.
702         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
703         prevent type checking.
704         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
705         cast the value to (void *): assigning a `foo *' to a `void *'
706         variable is valid.
707         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
708
709 2000-11-17  Jim Meyering  <meyering@lucent.com>
710
711         * strstr.c: Update from GNU libc.
712
713 2000-11-16  Jim Meyering  <meyering@lucent.com>
714
715         * strverscmp.c: Incorporate weak-alias-related changes from glibc.
716
717 2000-11-11  Jim Meyering  <meyering@lucent.com>
718
719         * error.c: Add a couple #includes, merging from GNU libc version.
720
721 2000-11-10  Jim Meyering  <meyering@lucent.com>
722
723         * obstack.h: Update from GNU libc.
724         * obstack.c: Likewise.
725
726 2000-11-06  Paul Eggert  <eggert@twinsun.com>
727
728         * getusershell.c (setusershell): Use rewind rather than
729         fseek/fseeko, to avoid configuration hassles with fseeko.
730         Don't bother opening SHELLS_FILE if shellstream is NULL;
731         it's not necessary.
732
733 2000-11-05  Jim Meyering  <meyering@lucent.com>
734
735         * makepath.h (make_dir): Declare.
736         * makepath.c (make_dir): Remove `static' attribute.
737         Tweak a comment.
738
739 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
740
741         * hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
742         last one in a bucket, advance to the next bucket.
743
744 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
745
746         * fnmatch.c: Do not comment out all the code if we are using
747         the GNU C library, because in some cases we are replacing buggy
748         code in the GNU C library itself.
749
750 2000-10-30  Paul Eggert  <eggert@twinsun.com>
751
752         * error.h, getline.h, modechange.h:
753         Remove "2000" from Copyright line, as the file hasn't been
754         changed this year other than in the copyright notice.
755
756         * xalloc.h: Add "2000" to Copyright line, as this file
757         was changed this year.
758
759 2000-10-30  Paul Eggert  <eggert@twinsun.com>
760
761         * fnmatch.c (FOLD): Do not assume that characters are unsigned.
762         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
763         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
764
765 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
766
767         * regex.h (__restrict_arr): Move definition out of #ifndef block.
768         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
769         doesn't define __restrict_arr.
770
771 2000-10-29  Jim Meyering  <meyering@lucent.com>
772
773         * xstat.in: Fix grammar in comment.
774
775 2000-10-28  Jim Meyering  <meyering@lucent.com>
776
777         * memchr.c: Update from libc.
778         Adjust for portability:
779         [HAVE_STDLIB_H]: Include stdlib.h.
780         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
781         Undef __memchr, too.
782         [!weak_alias]: Define __memchr to memchr.
783
784         * regex.c: Update from libc.
785         * regex.h: Likewise.
786         * getopt1.c: Likewise.
787         * memcmp.c: Likewise.
788
789         * getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
790         Avoid using fseek, when possible -- it's broken by design.
791         Patch by Ulrich Drepper.
792
793 2000-10-26  Jim Meyering  <meyering@lucent.com>
794
795         * strftime.c: Update from libc.
796
797 2000-10-25  Jim Meyering  <meyering@lucent.com>
798
799         * obstack.c: Update from libc.
800
801 2000-10-23  Jim Meyering  <meyering@lucent.com>
802
803         * hard-locale.c (hard_locale): Revert last change -- it was simply
804         wrong.  That set_locale call must not have any side effects.
805         From Paul Eggert.
806
807 2000-10-22  Jim Meyering  <meyering@lucent.com>
808
809         * md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
810         [CYCLIC]: Remove now-unused definition.
811
812         * save-cwd.c (O_DIRECTORY): Define, if needed.
813         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
814         Suggestion from Ulrich Drepper.
815
816 2000-10-21  Jim Meyering  <meyering@lucent.com>
817
818         * dirname.c (dir_name_r): New function, factored out of dir_name.
819         (dir_name): Use dir_name_r.
820         * dirname.h (dir_name_r): Declare it.
821
822 2000-10-21  Jim Meyering  <meyering@lucent.com>
823
824         * dirname.c (memrchr): Declare if necessary.
825         (dir_name): Remove the restriction that there be no
826         trailing slashes.  Now, this code skips past them, effectively
827         ignoring them.
828         [TEST_DIRNAME] (main): New unit tests.
829
830         * memrchr.c: New file from GNU libc.
831         Undef __memrchr, too.
832         [!weak_alias]: Define __memrchr to memrchr.
833         Guard weak_alias use with `#ifdef weak_alias'.
834
835 2000-10-17  Jim Meyering  <meyering@lucent.com>
836
837         * quote.h (PARAMS): Define and use.
838         Reported by Akim Demaille.
839
840         * getopt.c: Update from libc.
841
842 2000-10-16  Jim Meyering  <meyering@lucent.com>
843
844         * hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to setlocale.
845         From Jan Fedak.
846
847 2000-09-25  Jim Meyering  <meyering@lucent.com>
848
849         * md5.h (rol): Define (from GnuPG).
850
851         * sha.c: Give credit (GnuPG) where due.
852         (M): Use rol rather than open-coding it.
853         Add a FIXME comment.
854
855 2000-09-21  Jim Meyering  <meyering@lucent.com>
856
857         * userspec.c (parse_user_spec): Remove debugging printf I'd added.
858         Reported by Michael Stone.
859
860 2000-09-20  Jim Meyering  <meyering@lucent.com>
861
862         * Makefile.am (libfetish_a_SOURCES): Add sha.c.
863         (noinst_HEADERS): Add sha.h.
864         Based on code from Scott G. Miller and from GnuPG.
865
866 2000-09-15  Jim Meyering  <meyering@lucent.com>
867
868         * regex.c: Update from libc.
869
870 2000-09-10  Jim Meyering  <meyering@lucent.com>
871
872         * getopt.c (_getopt_internal): Update from glibc.
873
874 2000-09-09  Jim Meyering  <meyering@lucent.com>
875
876         * quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
877         think it should be used as a general replacement for isascii.
878         * fnmatch.c: Likewise.
879         * mbswidth.c: Likewise
880         * regex.c: Likewise.
881
882         Don't use atoi.
883         * userspec.c: Include sys/param.h and limits.h.
884         Include xstrtol.h.
885         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
886         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
887         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
888         UID, GID.  Check range.
889
890 2000-09-06  Jim Meyering  <meyering@lucent.com>
891
892         * getopt.c (_getopt_internal): Update from glibc.
893
894 2000-08-30  Jim Meyering  <meyering@lucent.com>
895
896         * strftime.c: Merge in changes from GNU libc.
897
898 2000-08-26  Jim Meyering  <meyering@lucent.com>
899
900         * closeout.c: Include "__fpending.h".
901         (close_stdout_status): Return right away if there's nothing to flush.
902
903         * Makefile.am (noinst_HEADERS): Add __fpending.h.
904         * __fpending.c: New file.
905         * __fpending.h: New file.
906
907 2000-08-07  Paul Eggert  <eggert@twinsun.com>
908
909         Standardize on "memory exhausted" instead of "Memory exhausted"
910         or "virtual memory exhausted".
911         * obstack.c (print_and_abort): Use "memory exhausted", not
912         "virtual memory exhausted".
913         * same.c (same_name): Invoke xalloc_die instead of printing
914         our own message.
915         * userspec.c (parse_user_spec): Likewise.
916         * bumpalloc.h: comment fix
917         * same.c, userspec.c: Include xalloc.h.
918
919         * xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
920         not char *const and pointing to a constant array.
921         * xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
922         (xrealloc): Comment fix.
923
924         * userspec.c (parse_user_spec):
925         Don't translate a message until just before returning,
926         to avoid unnecessary translation.
927
928 2000-08-07  Jim Meyering  <meyering@lucent.com>
929
930         * addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
931         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
932         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
933         getgroups.c, gethostname.c, getopt.h, group-member.c,
934         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
935         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
936         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
937         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
938         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
939         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
940         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
941         yesno.c: Back out Copyright date changes for each file with no change
942         this year.  This eases coordination with other programs using the same
943         source code modules.  From Paul Eggert.
944
945 2000-08-03  Greg McGary  <greg@mcgary.org>
946
947         * regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
948         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
949         (EXTEND_BUFFER): Use them.
950
951 2000-08-01  Jim Meyering  <meyering@lucent.com>
952
953         * dirname.c (ISSLASH): Define.
954         (BACKSLASH_IS_PATH_SEPARATOR): Define.
955         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
956         both `\' and `/' may be use as path separators.
957         Based on a patch from Prashant TR.
958
959 2000-07-31  Paul Eggert  <eggert@twinsun.com>
960
961         * quotearg.c (quotearg_n_options): Don't make the initial
962         slot vector a constant, since it might get modified.
963
964 2000-07-31  Jim Meyering  <meyering@lucent.com>
965
966         * xmalloc.c: Use `virtual memory exhausted', not `Memory exhausted'.
967         * obstack.c (print_and_abort): Likewise.
968
969 2000-07-30  Paul Eggert  <eggert@twinsun.com>
970
971         * quotearg.c (quotearg_n_options): Preallocate a slot 0
972         buffer, so that the caller can always quote one small
973         component of a "memory exhausted" message in slot 0.
974         From a suggestion by Jim Meyering.
975
976 2000-07-30  Jim Meyering  <meyering@lucent.com>
977
978         * makepath.c (make_path): Quote the other instance, too.
979
980         * quotearg.c (N_STATIC_SLOTVECS): Define.
981         (STATIC_BUF_SIZE): Define.
982         (quotearg_n_options): Use only statically allocated storage when
983         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
984         than STATIC_BUF_SIZE.
985
986 2000-07-29  Jim Meyering  <meyering@lucent.com>
987
988         * diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
989         * dirname.c (dir_name): Likewise.
990
991         * basename.c (base_name): Use ISSLASH rather than comparing against `/'.
992
993         * dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
994         (dir_name): Assert that there are no trailing slashes.
995
996 2000-07-18  Bruno Haible  <haible@clisp.cons.org>
997
998         * mbswidth.h (mbswidth): Add a flags argument.
999         (mbswidth): New declaration.
1000         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
1001         * mbswidth.c (mbswidth): Add a flags argument.
1002         (mbsnwidth): New function.
1003
1004 2000-07-24  Jim Meyering  <meyering@lucent.com>
1005
1006         * mbswidth.c: Remove useless #else.  From Bruno Haible.
1007
1008 2000-07-23  Paul Eggert  <eggert@twinsun.com>
1009
1010         * mbswidth.c (_XOPEN_SOURCE):
1011         Don't define; this causes problems on Solaris 7.
1012         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
1013
1014 2000-07-23  Paul Eggert  <eggert@twinsun.com>
1015
1016         * quotearg.c:
1017         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
1018         so that mbstate_t is always defined.
1019
1020         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
1021         be 1 in at least one GCC installation, and this configuration
1022         error is likely to be common.  Ignoring MB_LEN_MAX hurts
1023         performance on hosts that have mbrtowc but have only unibyte
1024         locales, but I assume these hosts are rare.
1025
1026 2000-07-23  Paul Eggert  <eggert@twinsun.com>
1027
1028         * quotearg.c: Streamline by invoking multibyte code only if needed.
1029         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
1030         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
1031         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
1032         invoke multibyte primitives.
1033
1034 2000-07-23  Jim Meyering  <meyering@lucent.com>
1035
1036         * basename.c (base_name): Add an assertion.
1037
1038 2000-07-15  Bruno Haible  <clisp.cons.org>
1039
1040         * quotearg.c: When the system forces us to redefine mbstate_t,
1041         shadow its mbsinit function.
1042
1043 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
1044
1045         * mbswidth.h: New file.
1046         * mbswidth.c: New file.
1047         * Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
1048         (noinst_HEADERS): Add mbswidth.h.
1049
1050 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
1051
1052         * config.charset: Add support for FreeBSD. Improve support for HP-UX
1053         and IRIX 6.
1054
1055 2000-07-15  Jim Meyering  <meyering@lucent.com>
1056
1057         * makepath.c: Include quote.h.
1058         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
1059         corresponding argument in a `quote (...)' call.
1060         Give better diagnostics.
1061
1062         * Makefile.am (libfetish_a_SOURCES): Add quote.c.
1063         (noinst_HEADERS): Add quote.h.
1064
1065         * quote.c (quote, quote_n): New file.  Two functions taken verbatim
1066         from tar's src/misc.c.
1067         * quote.h: New file.  Prototypes for same.
1068
1069 2000-07-10  Paul Eggert  <eggert@twinsun.com>
1070
1071         From a suggestion by Bruno Haible.
1072         * quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
1073         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
1074         to decide whether to define the BeOS workaround macro;
1075         this adjusts to the change to AC_MBSTATE_T.
1076
1077 2000-07-13  Paul Eggert  <eggert@twinsun.com>
1078
1079         * quotearg.h (enum quoting style): New enum clocale_quoting_style.
1080
1081         * quotearg.c (quoting_style_args, quoting_style_vals,
1082         quotearg_buffer_restyled): Add support for
1083         clocale_quoting_style.  Undo previous change to
1084         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
1085         and "{RIGHT QUOTATION MARK}" msgids.
1086
1087 2000-07-05  Paul Eggert  <eggert@twinsun.com>
1088
1089         The old behavior of quoting `like this' doesn't look good with
1090         newer, ISO-style fonts.  See:
1091         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
1092
1093         Instead, quote "like this" by default.  Let the translator
1094         tailor the locale-specific quoting behavior by providing
1095         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
1096
1097         * quotearg.c (N_): New macro.
1098         (gettext_default): New function.
1099         (quotearg_buffer_restyled): Use
1100         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
1101         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
1102
1103 2000-07-09  Jim Meyering  <meyering@lucent.com>
1104
1105         * Most files: Update copyright dates to include 2000.
1106
1107 2000-07-08  Jim Meyering  <meyering@lucent.com>
1108
1109         * xgethostname.c (ENAMETOOLONG): Define to an unlikely value
1110         if not defined.
1111         (xgethostname): Remove now-unnecessary #ifdef.
1112         Move declaration of `err' into loop where it's used.
1113
1114 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
1115
1116         * xgethostname.c (xgethostname): Protect against the SunOS5.5 bug
1117         by allocating a larger buffer. Test the gethostname return value for
1118         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
1119         returns an error and ENAMETOOLONG isn't defined.
1120
1121 2000-07-05  Paul Eggert  <eggert@twinsun.com>
1122         and Bruno Haible  <haible@clisp.cons.org>
1123
1124         * quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
1125
1126 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
1127
1128         * quotearg.c (struct quoting_options): Simplify quote_these_too
1129         dimension.
1130
1131 2000-07-03  Jim Meyering  <meyering@lucent.com>
1132
1133         * strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
1134         Reported by Bruno Haible.
1135
1136 2000-07-04  Jim Meyering  <meyering@lucent.com>
1137
1138         * quotearg.c: Make inclusion of <wchar.h> independent of whether
1139         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
1140         lacks mbrtowc.
1141
1142 2000-07-03  Paul Eggert  <eggert@twinsun.com>
1143         and Bruno Haible  <haible@clisp.cons.org>
1144
1145         * quotearg.c (mbrtowc):
1146         Assign to *pwc, and return 1 only if result is nonzero.
1147         (iswprint): Use ISPRINT when substituting our own mbrtowc.
1148
1149 2000-07-03  Jim Meyering  <meyering@lucent.com>
1150
1151         * readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
1152         This is necessary to get a definition of e.g., UTMP_FILE on HP-UX 10.20.
1153         From Bob Proulx.
1154
1155 2000-07-02  Jim Meyering  <meyering@lucent.com>
1156
1157         * quotearg.c (mbstate_t): Don't define here.
1158
1159 2000-07-02  Jim Meyering  <meyering@lucent.com>
1160
1161         * nanosleep.c (SIGCONT): Define if not already defined.
1162
1163 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
1164
1165         * mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
1166         per change in ../m4/ls-mntd-fs.m4.
1167         (read_filesystem_list): Ignore symbolic links.
1168
1169 2000-06-29  Jim Meyering  <meyering@lucent.com>
1170
1171         * same.c: Include <string.h> or <strings.h>, as appropriate,
1172         for declaration of strcmp.
1173
1174         * long-options.c: Include <stdlib.h>, for declaration of exit.
1175
1176         * mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
1177         Avoid warning by casting result to `char *' to remove `const'.
1178
1179 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
1180
1181         * Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
1182
1183 2000-06-26  Paul Eggert  <eggert@twinsun.com>
1184
1185         savedir now sets errno on failure and invokes xmalloc to get memory.
1186         Fix a couple of other minor bugs while we're at it.
1187
1188         * savedir.c (<unistd.h>): Do not include; there's no need.
1189         (NAMLEN): Remove macro.
1190         (malloc, realloc): Remove decls.
1191         (stpcpy): Likewise.
1192         ("xalloc.h"): Include.
1193         (NAME_SIZE_DEFAULT): New macro.
1194         (savedir): Use xmalloc / xrealloc to allocate memory.
1195         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
1196         Skip "" directory entries.
1197         Use strlen to calculate directory entry length, since the old method
1198         is rarely used these days and isn't worth supporting.
1199         Don't use a pointer after freeing it.
1200         Check for integer overflow when calculating allocation size.
1201         Use memcpy to copy entries, instead of stpcpy.
1202         Set errno properly when returning NULL.
1203         Check for readdir error.
1204
1205 2000-06-26  Jim Meyering  <meyering@lucent.com>
1206
1207         * posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
1208
1209 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
1210
1211         * getusershell.c (xmalloc, xrealloc): Remove functions.
1212         Include xalloc.h.
1213         Don't include <stdlib.h>.  Don't declare malloc, realloc.
1214
1215 2000-06-23  Bruno Haible  <haible@clisp.cons.org>
1216
1217         * unicodeio.c (print_unicode_char): Work around ansi2knr deficiency.
1218
1219 2000-06-24  Jim Meyering  <meyering@lucent.com>
1220
1221         * error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
1222
1223 2000-06-21  Jim Meyering  <meyering@lucent.com>
1224
1225         * getpass.c: New file, from Bruno Haible.  Required for BeOS.
1226
1227 2000-06-19  Paul Eggert  <eggert@twinsun.com>
1228
1229         * quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
1230         (mbrtowc, mbstate_t): Define substitutes if
1231         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
1232         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
1233         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
1234
1235 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
1236
1237         * xgetcwd.c (xgetcwd): If the required pathname length is smaller
1238         than 1024, return a memory chunk of least possible size, instead
1239         of size PATH_MAX + 2. In the loop, increment the size proportionally.
1240         Use free/xmalloc instead of xrealloc to avoid copying for very long
1241         paths.
1242
1243 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
1244
1245         * canon-host.c (canon_host): Use malloc and memcpy to copy an
1246         address, not strdup.  Include <stdlib.h> and don't declare free().
1247
1248 2000-06-17  Bruno Haible  <haible@clisp.cons.org>
1249
1250         * path-concat.c (path_concat): Don't access dir[-1] if dir is
1251         the empty string.
1252
1253 2000-06-21  Jim Meyering  <meyering@lucent.com>
1254
1255         * Makefile.am (libfetish_a_SOURCES): Add getstr.c.
1256         (noinst_HEADERS): Add getstr.h.
1257
1258         * getline.c (getstr): Move into a separate file.
1259         * getstr.c (getstr): New file, extracted from getline.c, with
1260         the following changes: new parameter, delim2; both delim[12]
1261         parameters have type `int', not `char'.  The latter would lose
1262         with 8-bit delimiters.
1263         * getstr.h: New file.
1264
1265 2000-06-19  Jim Meyering  <meyering@lucent.com>
1266
1267         * getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
1268
1269 2000-06-18  Jim Meyering  <meyering@lucent.com>
1270
1271         * mkdir.c: Remove file, due mainly to copyright incompatibility.
1272         Besides, these days every porting target provides a mkdir function.
1273
1274         * strnlen.c: Include memory.h, string.h, and/or strings.h as needed.
1275         (this snippet comes from src/system.h).
1276
1277 2000-06-15  Paul Eggert  <eggert@twinsun.com>
1278
1279         * human.c (adjust_value): New function.
1280         (human_readable_inexact): Apply rounding style even when
1281         printing approximate values.
1282
1283 2000-06-14  Paul Eggert  <eggert@twinsun.com>
1284
1285         * human.c (human_readable_inexact): Allow an input block
1286         size that is not a multiple of the output block size, and vice versa.
1287         Reported by Piergiorgio Sartor.
1288
1289 2000-06-14  Paul Eggert  <eggert@twinsun.com>
1290
1291         * getdate.y (get_date): Apply relative times after time
1292         zone indicator, not before.  Reported by Todd A. Jacobs.
1293
1294 2000-06-13  Jim Meyering  <meyering@lucent.com>
1295
1296         * Makefile.am (all-local): Depend on lstat.c and stat.c.
1297
1298         * xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
1299
1300 2000-06-12  Paul Eggert  <eggert@twinsun.com>
1301
1302         * xstat.in: Include <stdlib.h> in lstat, to declare "free".
1303
1304 2000-06-04  Paul Eggert  <eggert@twinsun.com>
1305
1306         * strnlen.c: Include <config.h> if HAVE_CONFIG_H.
1307
1308 2000-06-04  Jim Meyering  <meyering@lucent.com>
1309
1310         * getugroups.c (getugroups): Cast -1 to gid_t, for systems like
1311         SunOS4.1.4 for which gid_t is an unsigned type.
1312
1313 2000-06-03  Jim Meyering  <meyering@lucent.com>
1314
1315         * strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
1316
1317 2000-05-26  Bruno Haible  <haible@clisp.cons.org>
1318
1319         * Makefile.am (install-exec-local): On systems with glibc-2.1 or
1320         newer, don't install charset.alias.
1321         * config.charset: Change the Linux/glibc rules so they become empty
1322         on glibc-2.1 or newer.
1323
1324 2000-06-02  Jim Meyering  <meyering@lucent.com>
1325
1326         * mountlist.c: Back out last change.  Instead, do this...
1327         * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the me_dummy
1328         member using the same `ignore'-testing code.
1329         * mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
1330         fs_type strings.
1331         From Mark D. Roth.
1332
1333 2000-05-29  Jim Meyering  <meyering@lucent.com>
1334
1335         * mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore mounts
1336         with the `ignore' attribute.  Based on a patch from Mark D. Roth.
1337
1338 2000-05-22  Jim Meyering  <meyering@lucent.com>
1339
1340         * makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
1341
1342 2000-05-18  Jim Meyering  <meyering@lucent.com>
1343
1344         * hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
1345         back, too, since it may have been modified by allocate_entry.
1346         (hash_delete): Rewrite to use neither the assignment operator
1347         nor the comma operator in an if-expression.
1348
1349 2000-05-15  Paul Eggert  <eggert@twinsun.com>
1350
1351         * closeout.c:
1352         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
1353         Remove; no longer needed.
1354         "quotearg.h": Add include.
1355         (file_name): Do not bother to explicitly initialize to NULL; it's less
1356         efficient on some hosts.
1357         (close_stdout_status): Remove test as to whether stdout was already
1358         closed; it breaks for the case "echo x | sort >&-".
1359         Quote file name colons.
1360         Do not assume that _("write error") lacks format strings.
1361
1362 2000-05-15  Jim Meyering  <meyering@lucent.com>
1363
1364         * version-etc.c (version_etc_copyright): Update the copyright string
1365         used in all --version output.
1366
1367 2000-05-14  Jim Meyering  <meyering@lucent.com>
1368
1369         * closeout.c (close_stdout_set_file_name): New function.
1370         (close_stdout_status): Use new file-scoped global.
1371         Return right away if fstat says the stdout file descriptor is invalid.
1372         * closeout.h (close_stdout_set_file_name): Declare.
1373
1374 2000-05-10  Jim Meyering  <meyering@lucent.com>
1375
1376         * closeout.c [default_exit_status]: New file-scoped variable.
1377         (close_stdout_set_status): New function.
1378         * closeout.h (close_stdout_set_status): Declare.
1379
1380 2000-05-08  Jim Meyering  <meyering@lucent.com>
1381
1382         * long-options.c: Don't include closeout.h.
1383         (parse_long_options): Don't call close_stdout for --version.
1384
1385 2000-05-06  Jim Meyering  <meyering@lucent.com>
1386
1387         * strnlen.c: Undefine __strnlen and strnlen.
1388         [!weak_alias]: Define __strnlen to strnlen.
1389
1390         * atexit.c: New file, from libiberty.
1391
1392 2000-05-06  Jim Meyering  <meyering@lucent.com>
1393
1394         * closeout.c (close_stdout_status): Also check for errors on the
1395         stderr stream.
1396
1397 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
1398
1399         * localcharset.c (get_charset_aliases): Use malloc, realloc and memcpy
1400         instead of xmalloc, xrealloc, path_concat.
1401         (locale_charset): Treat empty environment variables as absent.
1402         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
1403
1404 2000-05-04  Jim Meyering  <meyering@lucent.com>
1405
1406         * getopt.c: Update from glibc.
1407         * obstack.c: Likewise.
1408         * obstack.h: Likewise.
1409         * regex.c: Likewise.  NB: K&R compiler support is dropped for this file
1410
1411         * regex.h: Likewise.
1412         * strndup.c: Likewise.
1413         * strnlen.c: New file, from glibc.
1414
1415 2000-05-01  Jim Meyering  <meyering@lucent.com>
1416
1417         * full-write.c (full_write): Remove `FIXME' part of comment.
1418
1419 2000-04-29  Jim Meyering  <meyering@lucent.com>
1420
1421         * path-concat.c: Declare strdup only if it's not defined.
1422         * canon-host.c: Likewise.
1423
1424 2000-04-28  Jim Meyering  <meyering@lucent.com>
1425
1426         * rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to avoid
1427         redefinition warning on some systems (HPUX).  Otherwise, regex.h is
1428         included first, then limits.h is included by locale.h by libintl.h.
1429         From John David Anglin.
1430
1431 2000-04-25  Jim Meyering  <meyering@lucent.com>
1432
1433         * makepath.c (S_IRWXUGO): Define.
1434         (make_path): Always perform explicit chmod if MODE specifies any
1435         of the `special' permission bits.  Prompted by a bug report against
1436         install from Mate Wierdl and Joost van Baal.
1437
1438 2000-04-18  Jim Meyering  <meyering@lucent.com>
1439
1440         * README: New file.
1441
1442         * getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
1443         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
1444
1445 2000-04-17  Jim Meyering  <meyering@lucent.com>
1446
1447         * strftime.c (my_strftime) [strftime]: Declare strftime here, since
1448         the definition of it to rpl_strftime also defined-away the system's
1449         declaration.
1450
1451 2000-04-15  Jim Meyering  <meyering@lucent.com>
1452
1453         Use `C' to denote so-called `contiguous' files, the same way
1454         that tar does.
1455         * filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
1456         (ftypelet): Use S_ISCTG.
1457         From Michael Deutschmann.
1458
1459 2000-04-14  Jim Meyering  <meyering@lucent.com>
1460
1461         * strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
1462
1463 2000-04-08  Jim Meyering  <meyering@lucent.com>
1464
1465         * Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
1466         names don't conflict.  Reported by Eli Zaretskii.
1467
1468 2000-03-28  Bruno Haible  <haible@clisp.cons.org>
1469
1470         * unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
1471         bug.  Deal with the different error behavior of Irix iconv.
1472
1473 2000-04-07  Jim Meyering  <meyering@lucent.com>
1474
1475         * putenv.c: Move inclusion of errno.h so it follows that of sys/types.h,
1476         to work around system header problems on AIX 3.2.5.  From Bruno Haible.
1477
1478 2000-04-05  Jim Meyering  <meyering@lucent.com>
1479
1480         Portability tweaks required for ultrix4.3.
1481         * readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare getutent.
1482         * readutmp.c: Include sys/types.h before sys/stat.h.
1483         * canon-host.c: Declare strdup.
1484         * path-concat.c: Likewise.
1485         From John David Anglin.
1486
1487 2000-04-04  Jim Meyering  <meyering@lucent.com>
1488
1489         Be more DOS 8.3-friendly.
1490         * ref-add.sin: Renamed from ref-add.sed.in.
1491         * ref-del.sin: Renamed from ref-del.sed.in.
1492         * Makefile.am: Reflect renaming.
1493         Reported by Eli Zaretskii.
1494
1495         Use a temporary file name that won't clash with `charset.alias'
1496         in the DOS 8.3 name space.
1497         * Makefile.am (charset_tmp): Define.
1498         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
1499         (uninstall-local): Likewise.
1500         Reported by Eli Zaretskii.
1501
1502 2000-03-29  Paul Eggert  <eggert@twinsun.com>
1503
1504         * time/strftime.c (my_strftime): Make sure we call the system
1505         strftime, not ourselves, when invoking the underlying strftime.
1506
1507 2000-03-24  Jim Meyering  <meyering@lucent.com>
1508
1509         * Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
1510         (charset_alias): Define.
1511         (install-exec-local): Factor out common code.
1512         (uninstall-local): Split lines longer than 80.
1513         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
1514         (SUFFIXES): Define.
1515         (.sed.in.sed): New rule.  Don't redirect directly to $@.
1516         (CLEANFILES): Add ref-add.sed and ref-del.sed.
1517
1518 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
1519
1520         * config.charset: Output a line containing "Packages using this file".
1521         * ref-add.sed.in, ref-del.sed.in: New files.
1522         * Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
1523         ref-del.sed): New rules.
1524
1525 2000-03-17  Jim Meyering  <meyering@lucent.com>
1526
1527         * unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
1528         Otherwise, include <strings.h>
1529
1530 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
1531
1532         * unicodeio.c (utf8_wctomb): New function.
1533         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
1534         format instead of in UCS-4 with platform dependent endianness.
1535
1536 2000-03-07  Paul Eggert  <eggert@twinsun.com>
1537
1538         * savedir.c (savedir): Work even if directory size is
1539         negative; this can happen with some screwy NFS configurations.
1540
1541 2000-03-06  Jim Meyering  <meyering@lucent.com>
1542
1543         * localcharset.c (get_charset_aliases): Don't try to free file_name
1544         if it's NULL (because we ran out of memory).  From Bruno Haible.
1545
1546 2000-03-05  Jim Meyering  <meyering@lucent.com>
1547
1548         * localcharset.c ("path-concat.h"): Include.
1549         (get_charset_aliases): Use path_concat instead of ANSI string
1550         concatenation.
1551
1552         * unicodeio.h (PARAMS): Define.
1553         Use it to guard prototype.
1554
1555 2000-03-04  Jim Meyering  <meyering@lucent.com>
1556
1557         * Makefile.am (install-exec-local): Create $(libdir) before installing
1558         into it.
1559         (uninstall-local): Uncomment this rule so `make distcheck' works
1560         once again.
1561
1562         * unicodeio.c (<errno.h>): Include it.
1563         (errno): Declare if not defined.
1564
1565         * localcharset.c: Add Bruno's comment justifying use of volatile.
1566
1567         * config.charset: New version, incorporating remarks from a linux
1568         i18n mailing list.  From Bruno Haible.
1569
1570 2000-03-02  Jim Meyering  <meyering@lucent.com>
1571
1572         * Makefile.am (EXTRA_DIST): Add config.charset.
1573
1574 2000-03-01  Jim Meyering  <meyering@lucent.com>
1575
1576         * localcharset.c: Guard some #includes with `#if HAVE_...'.
1577         * unicodeio.c: Likewise.
1578
1579 2000-02-02  Bruno Haible  <haible@clisp.cons.org>
1580
1581         * config.charset: New file.
1582         * localcharset.c: New file.
1583         * unicodeio.h, unicodeio.c: New files.
1584         * Makefile.am (DEFS): Add -DLIBDIR=...
1585         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
1586         (noinst_HEADERS): Add unicodeio.h.
1587         (all-local, install-exec-local, charset.alias): New targets.
1588
1589 2000-02-28  Paul Eggert  <eggert@twinsun.com>
1590
1591         * quotearg.c (ALERT_CHAR): New macro.
1592         (quotearg_buffer_restyled): Use it.
1593
1594 2000-02-27  Jim Meyering  <meyering@lucent.com>
1595
1596         * strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
1597         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
1598
1599         * backupfile.c: Guard inclusion of stdlib.h with `#if HAVE_STDLIB_H',
1600         not `#if STDC_HEADERS'.
1601         Declare malloc if needed.
1602
1603         * backupfile.c: Use `#if !HAVE_DECL...' instead of `#ifndef HAVE_DECL..'
1604         now that autoconf always defines the HAVE_DECL_ symbols.
1605         * human.c: Likewise.
1606         * same.c: Likewise.
1607         * strtoumax.c: Likewise.
1608
1609         * backupfile.c: Arrange for cpp to fail if the configure-time
1610         declaration check was not run.
1611         * hash.c: Likewise.
1612         * human.c: Likewise.
1613         * same.c: Likewise.
1614         * strtoumax.c: Likewise.
1615
1616         * userspec.c (parse_user_spec): If there is no `:' but there is a `.',
1617         then first look up the entire `.'-containing string as a login name.
1618
1619 2000-02-18  Paul Eggert  <eggert@twinsun.com>
1620
1621         * getdate.y: Handle two-digit years with leading zeros correctly.
1622         (textint): New typedef.
1623         (parser_control): Member year changed from int to textint.
1624         All uses changed.
1625         (YYSTYPE): Removed; replaced by %union with int and textint members.
1626         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
1627         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
1628         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
1629         (tSNUMBER, tUNUMBER): Now of type <textintval>.
1630         (date, number, to_year): Use width of number in digits, not its value,
1631         to determine whether it's a 2-digit year, or a 2-digit time.
1632         (yylex): Store number of digits of numeric tokens.
1633         Reported by John Kendall.
1634
1635         (parser_control): Changed from struct parser_control to typedef (for
1636         consistency).  All uses changed.
1637
1638         (tID): Removed; not used.
1639         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
1640
1641 2000-02-14  Paul Eggert  <eggert@twinsun.com>
1642
1643         * getpagesize.h (getpagesize): Port to VMS for Alpha;
1644         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
1645
1646 2000-02-12  Jim Meyering  <meyering@lucent.com>
1647
1648         * userspec.c (ISDIGIT): Define it.
1649         (isdigit): Remove definition.
1650         (is_number): Use ISDIGIT, not isdigit.
1651         <libintl.h>: Include.
1652         (_ and N_): Define.
1653         (parse_user_spec): Mark translatable strings.
1654
1655 2000-02-10  Jim Meyering  <meyering@lucent.com>
1656
1657         With these changes, nanosleep.[ch] are finally enough like the other
1658         lib/* replacement files to compile on a few more losing systems.
1659
1660         * nanosleep.h: Don't include config.h.
1661         Remove prototype from declaration of nanosleep.
1662         (PARAMS): Remove now-unneeded definition.
1663         * nanosleep.c: #undef nanosleep.
1664         (rpl_nanosleep): Rename from nanosleep.
1665
1666 2000-02-03  Jim Meyering  <meyering@lucent.com>
1667
1668         * readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
1669         rather than with `#if HAVE_UTMPNAME'.
1670
1671 2000-02-01  Jim Meyering  <meyering@lucent.com>
1672
1673         * readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
1674
1675 2000-01-31  Jim Meyering  <meyering@lucent.com>
1676
1677         * nanosleep.h (nanosleep): Guard declaration with
1678         `#if ! HAVE_DECL_NANOSLEEP'.
1679         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
1680         the declaration in that vendor's sys/timers.h.
1681         Reported by Christian Krackowizer.
1682
1683         * quotearg.c (ISASCII): Add #undef and move definition to follow
1684         inclusion of wctype.h to work around solaris2.6 namespace pollution.
1685         (ISPRINT): Likewise.
1686         Reported by Tom Tromey.
1687
1688 2000-01-30  Jim Meyering  <meyering@lucent.com>
1689
1690         * readutmp.c (extract_trimmed_name): Use UT_USER instead of hard-coding
1691         uses of ->ut_name.  The latter doesn't work with new Linux header files
1692         where only utmpx.ut_user is declared.
1693
1694         * readutmp.h (UT_USER): Define.
1695
1696 2000-01-23  Jim Meyering  <meyering@lucent.com>
1697
1698         * Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
1699         obstack.c.
1700
1701 2000-01-22  Jim Meyering  <meyering@lucent.com>
1702
1703         * strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
1704         [! HAVE_DECL_STRTOULL]: Declare strtoull.
1705         Required for some AIX systems.  Reported by Christian Krackowizer.
1706         [TESTING] (main): New function.
1707
1708         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
1709         * dirname.c (dir_name): Support for DOS-style file names with drive
1710         letters.
1711
1712         * quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of iswprint.
1713
1714         * strverscmp.c (ISDIGIT): Define.
1715         (strverscmp): Use ISDIGIT, not isdigit.
1716
1717 2000-01-17  Paul Eggert  <eggert@twinsun.com>
1718
1719         * nanosleep.c (nanosleep):
1720         Don't use SA_INTERRUPT to decide whether to call sigaction, as
1721         POSIX.1 doesn't require SA_INTERRUPT and some systems
1722         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
1723         it's been part of POSIX.1 since day 1 (in 1988).
1724
1725 2000-01-17  Jim Meyering  <meyering@lucent.com>
1726
1727         * interlock: Remove unused file.  Reported by François Pinard.
1728
1729 2000-01-16  Paul Eggert  <eggert@twinsun.com>
1730
1731         * quotearg.c (quotearg_buffer_restyled): Do not quote
1732         alert, backslash, formfeed, and vertical tab unnecessarily in
1733         shell quoting style.
1734
1735 Local Variables:
1736 version-control: never
1737 End: