ccc96a3bf134ae65ac7e7863d32b950d27443da2
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2004-03-24  Roland McGrath  <roland@redhat.com>
2
3         * Makerules ($(common-objpfx)shlib.lds): Don't use \n in rhs of sed
4         substitutions; the semicolon terminators are enough for ld anyway.
5
6         * elf/dl-deps.c (_dl_map_object_deps): Use alloca instead of
7         dynamically sized auto array in function already using alloca.
8         * locale/programs/ld-ctype.c (ctype_output): Likewise.
9         * locale/programs/ld-time.c (time_output): Likewise.
10         * elf/dl-misc.c (_dl_debug_vdprintf): Use macro instead of const for
11         IOV array size.
12         * locale/programs/charmap.c (charmap_read): Avoid alloca (or strdupa)
13         when also using dynamically-sized auto array.
14         * locale/programs/locfile.c (locfile_read): Likewise.
15         * locale/programs/repertoire.c (repertoire_read): Likewise.
16         * nis/nis_print_group_entry.c (nis_print_group_entry): Likewise.
17         * locale/programs/locarchive.c (enlarge_archive): Likewise.
18         * posix/annexc.c (check_header): Likewise.
19
20         * iconv/gconv_int.h (norm_add_slashes): Don't handle null SUFFIX.
21         strlen ("") gets optimized away just as well.
22         * intl/loadmsgcat.c (_nl_init_domain_conv): Update caller.
23         * wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Likewise.
24
25         * Makefile ($(objpfx)c++-types-check.out): Reduce duplication in
26         defining this target.  Also elide -Wstrict-prototypes from CFLAGS.
27
28 2004-03-24  Ulrich Drepper  <drepper@redhat.com>
29
30         * stdio-common/vfscanf.c [!COMPILE_WSCANF] (TOLOWER): Cast first
31         parameter to unsigned char.
32         * sysdeps/generic/strcasestr.c [_LIBC] (TOLOWER): Likewise.
33
34 2004-03-24  Jakub Jelinek  <jakub@redhat.com>
35
36         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Clear the rest of retval,
37         not just one limb if RETURN_LIMB_SIZE > 2.  Fix shifting up if
38         RETURN_LIMB_SIZE > 2.
39
40         * stdio-common/printf_fp.c (__printf_fp): For IEEE quad long double
41         on 32-bit architectures reserve 8 limbs instead of 4.
42
43 2004-03-23  Jakub Jelinek  <jakub@redhat.com>
44
45         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_pread, __NR_pwrite):
46         Define to __NR_p{read,write}64 if not defined.
47         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread,
48         __NR_pwrite): Define to __NR_p{read,write}64 if not defined instead
49         of defining it the other way around.
50         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Move common syscalls
51         for 64bit arches to sysdeps/unix/sysv/linux/wordsize-64/syscalls.list.
52         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
53         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
54         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
55         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
56         * sysdeps/unix/sysv/linux/alpha/pread64.c: Removed.
57         * sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Removed.
58         * sysdeps/unix/sysv/linux/alpha/glob64.c: Removed.
59         * sysdeps/unix/sysv/linux/alpha/truncate64.c: Removed.
60         * sysdeps/unix/sysv/linux/alpha/xstat64.c: Removed.
61         * sysdeps/unix/sysv/linux/alpha/pwrite64.c: Removed.
62         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: Removed.
63         * sysdeps/unix/sysv/linux/alpha/mmap64.c: Removed.
64         * sysdeps/unix/sysv/linux/alpha/fxstat64.c: Removed.
65         * sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Removed.
66         * sysdeps/unix/sysv/linux/alpha/ftruncate64.c: Removed.
67         * sysdeps/unix/sysv/linux/alpha/sendfile64.c: Removed.
68         * sysdeps/unix/sysv/linux/alpha/lxstat64.c: Removed.
69         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: Removed.
70         * sysdeps/unix/sysv/linux/alpha/statfs64.c: Removed.
71         * sysdeps/unix/sysv/linux/alpha/fstatfs64.c: Removed.
72         * sysdeps/unix/sysv/linux/s390/s390-64/pread64.c: Removed.
73         * sysdeps/unix/sysv/linux/s390/s390-64/getrlimit64.c: Removed.
74         * sysdeps/unix/sysv/linux/s390/s390-64/glob64.c: Removed.
75         * sysdeps/unix/sysv/linux/s390/s390-64/readdir64_r.c: Removed.
76         * sysdeps/unix/sysv/linux/s390/s390-64/truncate64.c: Removed.
77         * sysdeps/unix/sysv/linux/s390/s390-64/xstat64.c: Removed.
78         * sysdeps/unix/sysv/linux/s390/s390-64/pwrite64.c: Removed.
79         * sysdeps/unix/sysv/linux/s390/s390-64/getdents64.c: Removed.
80         * sysdeps/unix/sysv/linux/s390/s390-64/readdir_r.c: Removed.
81         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Removed.
82         * sysdeps/unix/sysv/linux/s390/s390-64/readdir.c: Removed.
83         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: Removed.
84         * sysdeps/unix/sysv/linux/s390/s390-64/mmap64.c: Removed.
85         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Removed.
86         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat64.c: Removed.
87         * sysdeps/unix/sysv/linux/s390/s390-64/setrlimit64.c: Removed.
88         * sysdeps/unix/sysv/linux/s390/s390-64/ftruncate64.c: Removed.
89         * sysdeps/unix/sysv/linux/s390/s390-64/getdents.c: Removed.
90         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat64.c: Removed.
91         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: Removed.
92         * sysdeps/unix/sysv/linux/s390/s390-64/readdir64.c: Removed.
93         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Removed.
94         * sysdeps/unix/sysv/linux/s390/s390-64/statfs64.c: Removed.
95         * sysdeps/unix/sysv/linux/s390/s390-64/fstatfs64.c: Removed.
96         * sysdeps/unix/sysv/linux/powerpc/powerpc64/glob64.c: Removed.
97         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: Removed.
98         * sysdeps/unix/sysv/linux/powerpc/powerpc64/xstat64.c: Removed.
99         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: Removed.
100         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fxstat64.c: Removed.
101         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: Removed.
102         * sysdeps/unix/sysv/linux/powerpc/powerpc64/lxstat64.c: Removed.
103         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: Removed.
104         * sysdeps/unix/sysv/linux/sparc/sparc64/pread64.c: Removed.
105         * sysdeps/unix/sysv/linux/sparc/sparc64/getrlimit64.c: Removed.
106         * sysdeps/unix/sysv/linux/sparc/sparc64/glob64.c: Removed.
107         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir64_r.c: Removed.
108         * sysdeps/unix/sysv/linux/sparc/sparc64/truncate64.c: Removed.
109         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat64.c: Removed.
110         * sysdeps/unix/sysv/linux/sparc/sparc64/pwrite64.c: Removed.
111         * sysdeps/unix/sysv/linux/sparc/sparc64/getdents64.c: Removed.
112         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir_r.c: Removed.
113         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir.c: Removed.
114         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: Removed.
115         * sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: Removed.
116         * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat64.c: Removed.
117         * sysdeps/unix/sysv/linux/sparc/sparc64/setrlimit64.c: Removed.
118         * sysdeps/unix/sysv/linux/sparc/sparc64/ftruncate64.c: Removed.
119         * sysdeps/unix/sysv/linux/sparc/sparc64/sendfile64.c: Removed.
120         * sysdeps/unix/sysv/linux/sparc/sparc64/getdents.c: Removed.
121         * sysdeps/unix/sysv/linux/sparc/sparc64/lxstat64.c: Removed.
122         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: Removed.
123         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir64.c: Removed.
124         * sysdeps/unix/sysv/linux/sparc/sparc64/statfs64.c: Removed.
125         * sysdeps/unix/sysv/linux/sparc/sparc64/fstatfs64.c: Removed.
126         * sysdeps/unix/sysv/linux/ia64/pread64.c: Removed.
127         * sysdeps/unix/sysv/linux/ia64/getrlimit64.c: Removed.
128         * sysdeps/unix/sysv/linux/ia64/glob64.c: Removed.
129         * sysdeps/unix/sysv/linux/ia64/readdir64_r.c: Removed.
130         * sysdeps/unix/sysv/linux/ia64/truncate64.c: Removed.
131         * sysdeps/unix/sysv/linux/ia64/xstat64.c: Removed.
132         * sysdeps/unix/sysv/linux/ia64/pwrite64.c: Removed.
133         * sysdeps/unix/sysv/linux/ia64/getdents64.c: Removed.
134         * sysdeps/unix/sysv/linux/ia64/readdir_r.c: Removed.
135         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Removed.
136         * sysdeps/unix/sysv/linux/ia64/readdir.c: Removed.
137         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: Removed.
138         * sysdeps/unix/sysv/linux/ia64/mmap64.c: Removed.
139         * sysdeps/unix/sysv/linux/ia64/xstat.c: Removed.
140         * sysdeps/unix/sysv/linux/ia64/fxstat64.c: Removed.
141         * sysdeps/unix/sysv/linux/ia64/setrlimit64.c: Removed.
142         * sysdeps/unix/sysv/linux/ia64/ftruncate64.c: Removed.
143         * sysdeps/unix/sysv/linux/ia64/sendfile64.c: Removed.
144         * sysdeps/unix/sysv/linux/ia64/getdents.c: Removed.
145         * sysdeps/unix/sysv/linux/ia64/lxstat64.c: Removed.
146         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: Removed.
147         * sysdeps/unix/sysv/linux/ia64/readdir64.c: Removed.
148         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Removed.
149         * sysdeps/unix/sysv/linux/ia64/statfs64.c: Removed.
150         * sysdeps/unix/sysv/linux/ia64/fstatfs64.c: Removed.
151         * sysdeps/unix/sysv/linux/x86_64/pread64.c: Removed.
152         * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: Removed.
153         * sysdeps/unix/sysv/linux/x86_64/glob64.c: Removed.
154         * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: Removed.
155         * sysdeps/unix/sysv/linux/x86_64/truncate64.c: Removed.
156         * sysdeps/unix/sysv/linux/x86_64/xstat64.c: Removed.
157         * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: Removed.
158         * sysdeps/unix/sysv/linux/x86_64/getdents64.c: Removed.
159         * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: Removed.
160         * sysdeps/unix/sysv/linux/x86_64/lxstat.c: Removed.
161         * sysdeps/unix/sysv/linux/x86_64/readdir.c: Removed.
162         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: Removed.
163         * sysdeps/unix/sysv/linux/x86_64/mmap64.c: Removed.
164         * sysdeps/unix/sysv/linux/x86_64/xstat.c: Removed.
165         * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: Removed.
166         * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: Removed.
167         * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: Removed.
168         * sysdeps/unix/sysv/linux/x86_64/sendfile64.c: Removed.
169         * sysdeps/unix/sysv/linux/x86_64/getdents.c: Removed.
170         * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: Removed.
171         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: Removed.
172         * sysdeps/unix/sysv/linux/x86_64/readdir64.c: Removed.
173         * sysdeps/unix/sysv/linux/x86_64/fxstat.c: Removed.
174         * sysdeps/unix/sysv/linux/x86_64/statfs64.c: Removed.
175         * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: Removed.
176         * sysdeps/unix/sysv/linux/alpha/Implies: New file.
177         * sysdeps/unix/sysv/linux/alpha/getdents64.c: New file.
178         * sysdeps/unix/sysv/linux/s390/s390-64/Implies: New file.
179         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Implies: New file.
180         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: New file.
181         * sysdeps/unix/sysv/linux/sparc/sparc64/Implies: New file.
182         * sysdeps/unix/sysv/linux/sparc/sparc64/lxstat.c: New file.
183         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: New file.
184         * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: New file.
185         * sysdeps/unix/sysv/linux/wordsize-64/statvfs64.c: New file.
186         * sysdeps/unix/sysv/linux/wordsize-64/fstatvfs64.c: New file.
187         * sysdeps/unix/sysv/linux/wordsize-64/pread64.c: New file.
188         * sysdeps/unix/sysv/linux/wordsize-64/fstatvfs.c: New file.
189         * sysdeps/unix/sysv/linux/wordsize-64/getrlimit64.c: New file.
190         * sysdeps/unix/sysv/linux/wordsize-64/glob64.c: New file.
191         * sysdeps/unix/sysv/linux/wordsize-64/readdir64_r.c: New file.
192         * sysdeps/unix/sysv/linux/wordsize-64/truncate64.c: New file.
193         * sysdeps/unix/sysv/linux/wordsize-64/xstat64.c: New file.
194         * sysdeps/unix/sysv/linux/wordsize-64/pwrite64.c: New file.
195         * sysdeps/unix/sysv/linux/wordsize-64/getdents64.c: New file.
196         * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: New file.
197         * sysdeps/unix/sysv/linux/wordsize-64/lxstat.c: New file.
198         * sysdeps/unix/sysv/linux/wordsize-64/readdir.c: New file.
199         * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c: New file.
200         * sysdeps/unix/sysv/linux/wordsize-64/mmap64.c: New file.
201         * sysdeps/unix/sysv/linux/wordsize-64/xstat.c: New file.
202         * sysdeps/unix/sysv/linux/wordsize-64/fxstat64.c: New file.
203         * sysdeps/unix/sysv/linux/wordsize-64/setrlimit64.c: New file.
204         * sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c: New file.
205         * sysdeps/unix/sysv/linux/wordsize-64/sendfile64.c: New file.
206         * sysdeps/unix/sysv/linux/wordsize-64/getdents.c: New file.
207         * sysdeps/unix/sysv/linux/wordsize-64/statvfs.c: New file.
208         * sysdeps/unix/sysv/linux/wordsize-64/lxstat64.c: New file.
209         * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise64.c: New file.
210         * sysdeps/unix/sysv/linux/wordsize-64/readdir64.c: New file.
211         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: New file.
212         * sysdeps/unix/sysv/linux/wordsize-64/fxstat.c: New file.
213         * sysdeps/unix/sysv/linux/wordsize-64/statfs64.c: New file.
214         * sysdeps/unix/sysv/linux/wordsize-64/fstatfs64.c: New file.
215         * sysdeps/unix/sysv/linux/ia64/Implies: New file.
216         * sysdeps/unix/sysv/linux/x86_64/Implies: New file.
217
218 2004-03-22  Richard Henderson  <rth@redhat.com>
219
220         * sysdeps/alpha/s_fabs.S: Remove file.
221         * sysdeps/alpha/s_copysign.S: Remove file.
222
223 2004-03-22  Jakub Jelinek  <jakub@redhat.com>
224
225         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
226         (__getpagesize): Avoid warning about writing into read-only memory.
227
228         * string/Makefile (routines): Add xpg-strerror.
229         * string/string.h (strerror_r): If __USE_XOPEN2K but not __USE_GNU,
230         redirect strerror_r to __xpg_strerror_r.
231         * string/Versions (libc): Add __xpg_strerror_r@@GLIBC_2.3.4.
232         * sysdeps/generic/xpg-strerror.c: New file.
233         * sysdeps/mach/xpg-strerror.c: New file.
234
235 2004-03-22  Joseph S. Myers  <jsm@polyomino.org.uk>
236
237         * sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): Do not use
238         casts as lvalues.
239
240 2004-03-22  Andreas Jaeger  <aj@suse.de>
241
242         * elf/tst-dlmodcount.c (unload): Remove unused variable.
243
244         * misc/tst-mntent.c (main): Use tmpfile instead of tmpnam.
245
246 2004-03-20  Roland McGrath  <roland@frob.com>
247
248         * sysdeps/mach/hurd/dl-execstack.c: New file.
249
250 2004-03-20  Ulrich Drepper  <drepper@redhat.com>
251
252         * po/ca.po: Update from translation team.
253
254 2004-03-20  Andreas Jaeger  <aj@suse.de>
255
256         * sysdeps/unix/sysv/linux/sched_getaffinity.c
257         (__sched_getaffinity_old): Fix interface.
258         * sysdeps/unix/sysv/linux/sched_setaffinity.c
259         (__sched_setaffinity_old): Likewise.
260
261         * sysdeps/unix/sysv/linux/sched_setaffinity.c: Include <alloca.h>.
262
263 2004-03-17  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
264
265         * sysdeps/unix/sysv/linux/kernel-features.h
266         (__ASSUME_CLONE_THREAD_FLAGS ): Define for newer SH kernel.
267         (__ASSUME_TGKILL, __ASSUME_UTIMES): Likewise.
268         * sysdeps/unix/sysv/linux/sh/socket.S: Add unwind information.
269
270 2004-03-19  Ulrich Drepper  <drepper@redhat.com>
271
272         * time/tzfile.c (__tzfile_default): Correct setting of rule_stdoff
273         and rule_dstoff after reading the posixrules file.
274
275 2004-03-18  Ulrich Drepper  <drepper@redhat.com>
276
277         * malloc/malloc.c (__posix_memalign): Correct alignment check.
278         Reported by Don Heller <dheller@cse.psu.edu>.
279
280 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
281
282         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Remove hwcap
283         variable and weak_extern for _dl_hwcap.
284         (_DL_HWCAP_TLS_MASK): Define.
285         (HWCAP_CHECK): Fix checking of non-platform hwcap bits.  Use
286         lib->osversion instead of cache_new->libs[middle].osversion.
287
288         * stdio-common/asprintf.c: Remove USE_IN_LIBIO conditionals.
289         * stdio-common/dprintf.c: Likewise.
290         * stdio-common/fprintf.c: Likewise.
291         * stdio-common/getline.c: Likewise.
292         * stdio-common/getw.c: Likewise.
293         * stdio-common/perror.c: Likewise.
294         * stdio-common/printf-prs.c: Likewise.
295         * stdio-common/printf.c: Likewise.
296         * stdio-common/printf_size.c: Likewise.
297         * stdio-common/psignal.c: Likewise.
298         * stdio-common/putw.c: Likewise.
299         * stdio-common/scanf.c: Likewise.
300         * stdio-common/snprintf.c: Likewise.
301         * stdio-common/sprintf.c: Likewise.
302         * stdio-common/sscanf.c: Likewise.
303         * stdio-common/tstgetln.c: Likewise.
304         * stdio-common/vfprintf.c: Likewise.
305
306 2004-03-18  Paul Eggert  <eggert@cs.ucla.edu>
307
308         * posix/getopt.h (__GNUC_PREREQ) [!defined __THROW]: Define
309         if not defined, fixing a typo (it used to be defined if
310         __GNUC__ was not defined).
311
312 2004-03-18  Ulrich Drepper  <drepper@redhat.com>
313
314         * posix/sched.h: Change sched_getaffinity and sched_setaffinity
315         interfaces: add new second parameter.
316         * sysdeps/generic/sched_getaffinity.c: Implement interface change.
317         * sysdeps/generic/sched_setaffinity.c: Likewise.
318         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Likewise.  Add
319         compatibility interface.
320         * sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
321         * sysdeps/unix/sysv/linux/Versions: Add versions for changed
322         interfaces.
323
324 2004-03-18  Roland McGrath  <roland@redhat.com>
325
326         * manual/Makefile (stamp-summary): Use -k option to sort,
327         not traditional key selection syntax.
328         Reported by Jim Gifford <giffordj@linkline.com>.
329
330 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
331
332         * elf/ldconfig.c: Include stdbool.h.
333
334 2004-03-18  Roland McGrath  <roland@redhat.com>
335
336         * elf/ldconfig.c (parse_conf_include): New function.
337         (parse_conf): Call it to parse lines starting with "include".
338         Remaining words are glob patterns for more config files to read.
339         Take additional bool argument to disable opt_chroot processing.
340         (main): Update caller.
341
342 2004-03-17  Ulrich Drepper  <drepper@redhat.com>
343
344         * sysdeps/unix/sysv/linux/ia64/ioperm.c (_iopl): Match EPERM error
345         the x86 code produces in case of mission permissions.
346         Patch by Bernd Schmidt <bernds@redhat.com>.
347
348         * resolv/netdb.h: Define AI_IDN_ALLOW_UNASSIGNED,
349         AI_IDN_USE_STD3_ASCII_RULES, NI_IDN_ALLOW_UNASSIGNED, and
350         NI_IDN_USE_STD3_ASCII_RULES.
351         * inet/getnameinfo.c (getnameinfo): Implement handling of
352         NI_IDN_ALLOW_UNASSIGNED and NI_IDN_USE_STD3_ASCII_RULES.
353         * sysdeps/posix/getaddrinfo.c (gaih_inet): Implement handling of
354         AI_IDN_ALLOW_UNASSIGNED and AI_IDN_USE_STD3_ASCII_RULES.
355
356 2004-03-17  Jakub Jelinek  <jakub@redhat.com>
357
358         * sysdeps/x86_64/hp-timing.h (HP_TIMING_NOW): Make asm volatile.
359
360 2004-03-16  Jakub Jelinek  <jakub@redhat.com>
361
362         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Spelling.
363         (JB_SIZE): Undefine before including __longjmp-common.S again.
364         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Spelling.
365         (JB_SIZE): Undefine before including setjmp-common.S again.
366         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Spelling.
367         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Spelling.
368         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Spelling.
369         * sysdeps/powerpc/powerpc32/bsd-setjmp.S: Spelling.
370         * sysdeps/powerpc/sigjmp.c: Spelling.
371
372 2004-03-16  Ulrich Drepper  <drepper@redhat.com>
373
374         * include/ctype.h: For libc, define isdigit, isdigit_l, and
375         __isdigit_l as simple comparison macros.
376         * include/wctype.h: For libc, define iswdigit, iswdigit_l, and
377         __iswdigit_l as simple comparison macros.
378         * wctype/wcfuncs_l.c: #undef iswdigit and __iswdigit.
379
380 2004-03-15  Ulrich Drepper  <drepper@redhat.com>
381
382         * sysdeps/sparc/fpu/bits/mathinline.h: Restore missing #ifdef.
383         Patch by Richard Henderson.
384
385 2004-03-16  Jakub Jelinek  <jakub@redhat.com>
386
387         * sysdeps/generic/strtold_l.c (STRING_TYPE, STRTOLD, __STRTOLD,
388         __STRTOD, INTERNAL, INTERNAL1): Define, use them.
389         [! USE_WIDE_CHAR] (INTERNAL (__STRTOLD)): Add libc_hidden_def.
390
391         * inet/getnameinfo.c: Include stdlib.h.
392
393 2004-03-15  Richard Henderson  <rth@redhat.com>
394
395         * math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h,
396         and bits/inf.h.
397         * math/math.h: Include them.
398
399         * sysdeps/alpha/fpu/bits/mathdef.h: Remove INFINITY.
400         * sysdeps/arm/fpu/bits/mathdef.h: Likewise.
401         * sysdeps/generic/bits/mathdef.h: Likewise.
402         * sysdeps/i386/fpu/bits/mathdef.h: Likewise.
403         * sysdeps/ia64/fpu/bits/mathdef.h: Likewise.
404         * sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
405         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
406         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
407         * sysdeps/sh/sh4/fpu/bits/mathdef.h: Likewise.
408         * sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
409         * sysdeps/x86_64/fpu/bits/mathdef.h: Likewise.
410
411         * sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
412         (HUGE_VALF, HUGE_VALL): Remove.
413         * sysdeps/ieee754/bits/huge_val.h: Likewise.
414         * sysdeps/sh/bits/huge_val.h: Likewise.
415
416         * sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
417         * sysdeps/generic/bits/huge_valf.h: New file.
418         * sysdeps/generic/bits/huge_vall.h: New file.
419         * sysdeps/generic/bits/inf.h: New file.
420         * sysdeps/ieee754/bits/huge_valf.h: New file.
421         * sysdeps/ieee754/bits/inf.h: New file.
422         * sysdeps/i386/bits/huge_val.h: Remove file.
423         * sysdeps/i386/bits/huge_vall.h: New file.
424         * sysdeps/ia64/bits/huge_val.h: Remove file.
425         * sysdeps/ia64/bits/huge_vall.h: New file.
426         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
427         * sysdeps/m68k/bits/huge_val.h: Remove file.
428         * sysdeps/m68k/bits/huge_vall.h: New file.
429         * sysdeps/s390/bits/huge_val.h: Remove file.
430         * sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
431         * sysdeps/sparc/bits/huge_vall.h: New file.
432         * sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
433         * sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.
434
435         * sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
436         * sysdeps/mips/bits/nan.h (NAN): Likewise.
437
438 2004-03-15  Ulrich Drepper  <drepper@redhat.com>
439
440         * iconv/gconv_simple.c (__gconv_transform_utf8_internal): Use only
441         one copy of error handling code.
442
443         * stdio-common/vfscanf.c: Simplify error handling macros.  Use
444         direct locale access functions.
445
446         * sysdeps/generic/strcasestr.c (__strcasestr): Optimize use of
447         tolower function.
448
449 2004-03-13  Jakub Jelinek  <jakub@redhat.com>
450
451         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add const.
452         (handle_amd): New function.
453         (__sysconf): Handle _SC_LEVEL4_CACHE_LINESIZE here, not in
454         linux_sysconf.  Call handle_amd on AuthenticAMD.
455         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Likewise.
456
457 2004-03-14  Ulrich Drepper  <drepper@redhat.com>
458
459         * wcsmbs/mbsrtowcs.c: Just a wrapper around __mbsrtowcs_l.
460         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Add real implementation here.
461
462         Make the non-_l functions wrappers around the _l functions.
463         * include/monetary.h: Declare __vstrmon_l.
464         * include/string.h: Add libc_hidden_proto for __strcoll_l and
465         __strxfrm_l.
466         * include/time.h: Define ptime_locale_status.  Declare
467         __strptime_internal.
468         * include/wchar.h: Add libc_hidden_proto for __wcscoll_l and
469         __wcsxfrm_l.
470         * stdlib/strfmon.c: Move the code to strfmon_l.c.  Add little
471         wrapper around __vstrfmon_l.
472         * stdlib/strfmon_l.c: Add real implementation.  Split into new
473         function __vstrfmon_l to allow calling it from strfmon.
474         * stdlib/strtod.c: Move real code to strtod_l.c and add wrapper.
475         * stdlib/strtod_l.c: Add real implementation.
476         * stdlib/strtof.c: Adjust to changed strtod.c.
477         * stdlib/strtof_l.c: Include strtod_l.c now.
478         * stdlib/strtold.c: New file.
479         * stdlib/strtold_l.c: Removed.
480         * string/strcoll.c: Move real code to strcoll_l.c: Add wrapper.
481         * string/strcoll_l.c: Add real implementation.
482         * string/strxfrm.c: Move real code to strxfrm_l.c: Add wrapper.
483         * string/strxfrm_l.c: Add real implementation.
484         * sysdeps/generic/strtol.c: Move real implementation to strtol_l.c.
485         Add wrappers.
486         * sysdeps/generic/strtol_l.c: Add real implementation.
487         * sysdeps/generic/strtold.c: Removed.
488         * sysdeps/generic/strtold_l.c: New file.
489         * sysdeps/generic/strtoll_l.c: Include strtol_l.c now.  Adjust
490         #defines.
491         * sysdeps/generic/strtoul_l.c: Likewise.
492         * sysdeps/generic/strtoull_l.c: Likewise.
493         * sysdeps/generic/wcstol_l.c: Likewise.
494         * sysdeps/generic/wcstoll_l.c: Likewise.
495         * sysdeps/generic/wcstoul_l.c: Likewise.
496         * sysdeps/generic/wcstoull_l.c: Likewise.
497         * sysdeps/ieee754/ldbl-128/strtold.c: Removed.
498         * sysdeps/ieee754/ldbl-128/strtold_l.c: New file.
499         * sysdeps/ieee754/ldbl-96/strtold.c: Removed.
500         * sysdeps/ieee754/ldbl-96/strtold_l.c: New file.
501         * sysdeps/m68k/strtold.c: Removed.
502         * sysdeps/m68k/strtold_l.c: New file.
503         * time/strftime.c: Move real code to strftime_l.c.  Add wrapper.
504         * time/strftime_l.c: Add real implementation.
505         * time/strptime.c: Move real code to strptime_l.c.  Add wrapper.
506         * time/strptime_l.c: Add real implementation.
507         * time/wcsftime.c: Simplify since only wrappers are defined in
508         strftime.c.
509         * time/wcsftime_l.c: Include strftime_l.c.
510         * wcsmbs/wcscoll.c: Simplify since the file is not used by wcscoll_l.c
511         anymore.
512         * wcsmbs/wcscoll_l.c: Include strcoll_l.c.
513         * wcsmbs/wcsxfrm.c: Simplify since the file is not used by wcsxfrm_l.c
514         anymore.
515         * wcsmbs/wcsxfrm_l.c: Include strxfrm_l.c.
516         * wcsmbs/wcstod.c: Prepare to include new strtod.c.
517         * wcsmbs/wcstod_l.c: Include strtod_l.c.
518         * wcsmbs/wcstof.c: Prepare to include new strtof.c.
519         * wcsmbs/wcstof_l.c: Include strtof_l.c.
520         * wcsmbs/wcstold.c: Prepare to include new strtold.c.
521         * wcsmbs/wcstold_l.c: Include strtold_l.c.
522
523         * locale/uselocale.c: Use _NL_CURRENT_LOCALE instead of __libc_tsd_get.
524
525         * sysdeps/generic/strcasecmp.c: Optimize a bit.  It's better to get
526         a reference to the current locale and then use the _l functions.
527         * sysdeps/generic/strncase.c: Likewise.
528
529 2004-03-11  Jeroen Dekkers  <jeroen@dekkers.cx>
530
531         * cppflags-iterator.mk: Change libof-$(cpp-src) to
532         libof-$(notdir $(cpp-src)).
533
534 2004-03-13  Ulrich Drepper  <drepper@redhat.com>
535
536         * resolv/netdb.h (EAI_OVERFLOW): Define.
537         (NI_IDN): Define.
538         * inet/getnameinfo.c (getnameinfo): Return error in case argument
539         buffers overflow.  Implement NI_IDN.
540
541 2004-03-12  Ulrich Drepper  <drepper@redhat.com>
542
543         * resolv/netdb.h: Define AI_CANONIDN.
544         * sysdeps/posix/getaddrinfo.c: Implement AI_CANONIDN.
545
546 2004-03-12  Richard Henderson  <rth@redhat.com>
547
548         * sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind.  Propagate
549         oldvalue from CENABLE to CDISABLE.
550
551 2004-03-12  Ulrich Drepper  <drepper@redhat.com>
552
553         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file.
554
555         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
556
557         * posix/getconf.c (vars): Add _SC_ values for cache information.
558         * sysdeps/generic/bits/confname.h: Add _SC_* values for cache
559         information.
560         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Reorganize to
561         allow yet another sysconf function to include the one in this file.
562         * sysdeps/unix/sysv/linux/i386/sysconf.c: New file.
563         * sysdeps/generic/sysconf.c: Add default handling for cache line info.
564
565 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
566
567         * sysdeps/posix/sysconf.c (__sysconf): Add missing support for
568         some _SC_* values.
569
570 2004-03-10  Chris Heath  <chris@heathens.co.nz>
571
572         * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
573
574 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
575
576         * sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
577         including __longjmp-common.S again.
578         * sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
579         * sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
580         including setjmp-common.S again.
581         * sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
582         * sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
583         first argument in the prototype.
584         * sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
585         Remove bogus semicolons.
586
587         * sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
588         IS_IN_rtld.
589         (__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
590
591 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
592
593         * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
594
595 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
596
597         * sysdeps/generic/errno.c: Include <dl-sysdep.h>.  Use
598         RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
599
600         * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
601         points wrappers around the unified code.
602
603 2004-03-11  Richard Henderson  <rth@redhat.com>
604
605         * sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
606         (glibc21_stat): New.
607         * sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
608         * sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
609         * sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
610         * sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
611         code for _STAT_VER_GLIBC2_3_4.
612         (__libc_missing_axp_stat64): New.
613         * sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
614         * sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
615         (_STAT_VER_GLIBC2_3_4, _STAT_VER_KERNEL64): New.
616         (struct stat, struct stat64): Update to new format.
617         (_STATBUF_ST_NSEC): New.
618
619 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
620
621         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
622         (__novec_swapcontext): Branch to novec_* labels.
623
624 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
625
626         * posix/getopt.c (_): Don't define here for glibc.
627
628 2004-03-10  Jakub Jelinek  <jakub@redhat.com>
629
630         * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
631         compat_data_section): Define.
632         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
633         attribute_compat_text_section.
634         * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
635         * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
636         __old_globfree): Likewise.
637         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
638         Likewise.
639         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
640         (__posix_fadvise64_l32): Likewise.
641         * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
642         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
643         (__posix_fadvise64_l32): Likewise.
644         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
645         Likewise.
646         * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
647         * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
648         Likewise.
649         * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
650         * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
651         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
652         (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
653         (__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
654         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
655         (__makecontext_stub): Likewise.
656         (__novec_makecontext): Likewise.  Fix name in END () to match
657         function name.
658         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
659         (__setcontext): Use END instead of PSEUDO_END.
660         (__novec_setcontext): Add compat_text_section.  Use END instead of
661         PSEUDO_END, fix the name in END () to match function name.
662         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
663         (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
664         (__novec_getcontext, __getcontext_stub): Add compat_text_section.
665
666 2004-03-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
667
668         * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
669         (COPY_UNALIGNED_WORD): Remove cast used as lvalue.
670
671 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
672
673         * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
674
675 2004-03-10  Richard Henderson  <rth@redhat.com>
676
677         * sysdeps/generic/errno.c: Disable versioning for rtld.
678
679         * sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
680         * sysdeps/generic/unwind-pe.c: New file.
681         * sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
682         _LIBC_DEFINITIONS.
683
684 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
685
686         * include/libc-symbols.h: Define attribute_compat_text_section and
687         attribute_compat_data_section.
688         * io/ftw.c: Mark compat code with attribute_compat_text_section.
689         * libio/iofopncook.c: Likewise.
690         * libio/oldfileops.c: Likewise.
691         * libio/oldiofclose.c: Likewise.
692         * libio/oldiofdopen.c: Likewise.
693         * libio/oldiofgetpos.c: Likewise.
694         * libio/oldiofgetpos64.c: Likewise.
695         * libio/oldiofopen.c: Likewise.
696         * libio/oldiofsetpos.c: Likewise.
697         * libio/oldiofsetpos64.c: Likewise.
698         * libio/oldiopopen.c: Likewise.
699         * libio/oldpclose.c: Likewise.
700         * libio/oldtmpfile.c: Likewise.
701         * nptl/forward.c: Likewise.
702         * nss/getXXbyYY_r.c: Likewise.
703         * nss/getXXent_r.c: Likewise.
704         * posix/tst-vfork1.c: Likewise.
705         * stdlib/canonicalize.c: Likewise.
706         * stdlib/old_atexit.c: Likewise.
707         * sysdeps/generic/glob.c: Likewise.
708         * sysdeps/posix/posix_fallocate64.c: Likewise.
709         * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
710         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
711         * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
712         * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
713         * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
714         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
715         * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
716         * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
717         * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
718         * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
719         * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
720         * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
721         * posix/regexec.c: Likewise.
722
723         * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
724         should be the default symbol. Having none misses the point.
725
726 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
727
728         * stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
729
730 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
731
732         * posix/regexec.c (regexec): Return with error on unknown eflags.
733         Replace weak_alias with versioned_symbol.
734         (__compat_regexec): New.
735         * posix/Versions (libc): Add regexec@GLIBC_2.3.4.
736
737 2004-03-09  Richard Henderson  <rth@redhat.com>
738
739         * math/math.h (isgreater, isgreaterequal, isless, islessequal,
740         islessgreater, isunordered): Use builtins if available.
741         * sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
742         * sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
743         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
744         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
745         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
746         * sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
747         isless, islessequal, islessgreater): Remove; use default.
748         (isunordered): Convert inputs to double.
749
750 2004-02-09  Jakub Jelinek  <jakub@redhat.com>
751
752         * posix/Makefile (tests): Add tst-vfork2.
753         * posix/tst-vfork1.c (do_test): Fix comment.
754         * posix/tst-vfork2.c: New test.
755
756 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
757
758         * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
759         derefernce in error message.  Pretty printing.
760
761         * po/nl.po: Update from translation team.
762
763 2004-03-08  Andreas Schwab  <schwab@suse.de>
764
765         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
766         sysinfo pointer value.
767
768 2004-03-08  Paul Eggert  <eggert@cs.ucla.edu>
769
770         Merge from gnulib.  We now assume C89 or better.
771         * posix/getopt1.c (const): Remove.
772         * posix/getopt.c (const): Likewise.
773         * posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
774         _getopt_long_only_r, main): Use prototypes, not old-style definitions.
775         * posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
776         _getopt_internal, getopt, main): Likewise.
777         * posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
778         * posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
779         Include <string.h> regardless.  No need for <strings.h>.
780         [!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
781         (_): Define to gettext always.
782         (my_index): Remove: all uses changed to strchr.
783         (strlen): Remove declaration.
784         * posix/getopt.h (struct option.name): Always const char *.
785
786 2004-03-08  Marcus Brinkmann  <marcus@gnu.org>
787
788         * posix/getopt.h (_getopt_internal): Move to ...
789         * posix/getopt_int.h: ... here.  New file.
790         * include/getopt_int.h: New file.
791         * include/getopt.h: Remove libc_hidden_proto for getopt_long
792         and getopt_long_only.
793         * posix/getopt1.c: Include "getopt_int.h".  Remove
794         libc_hidden_def for getopt_long and getopt_long_only.
795         (_getopt_long_r, _getopt_long_only_r): New functions.
796         * posix/getopt.c: Include "getopt_int.h".
797         (__getopt_initialized): Variable removed.
798         (nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
799         Static variables removed.
800         (nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
801         USE_NONOPTION_FLAGS]: Static variables removed.
802         (getopt_data): New static variable.
803         (SWAP_FLAGS): Use d->__nonoption_flags_len instead
804         nonoption_flags_len.
805         (exchange): Add new argument D of type struct getopt_data *.
806         Replace optind with d->optind, optarg with d->optarg, opterr with
807         d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
808         first_nonopt with d->__first_nonopt, last_nonopt with
809         d->__last_nonopt, d->ordering with d->__ordering,
810         d->posixly_correct with d->__posixly_correct (which is now an
811         int instead a string, so fix users), nonoption_flags_len
812         with d->__nonoption_flags_len, nonoption_flags_max_len with
813         d->__nonoption_flags_max_len.
814         (_getopt_initialize): Likewise.
815         (_getopt_internal): Rename to ...
816         (_getopt_internal_r): ... this.  Also add new argument D of type
817         struct getopt_data * and use of members of D rather than global or
818         static variables as described for exchange() above.  Add new argument
819         to invocations of _getopt_initialize and exchange.
820         (_getopt_internal): Reimplement in terms of _getopt_internal_r.
821         * argp/argp-parse.c: Include <getopt_int.h>.
822         [_LIBC]: Do not include <bits/libc-lock.h>.
823         [!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
824         [!_LIBC] (_argp_hang): Make static.
825         (getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
826         (_argp_unlock_xxx): Remove.
827         (parser_init): Do not use LOCK_GETOPT.
828         (parser_finalize): Do not use UNLOCK_GETOPT.
829         (struct parser): New member OPT_DATA.
830         (parser_init): Initialize parser->opt_data.  Use
831         parser->opt_data.opterr instead of opterr.
832         (parser_parse_opt): Use parser->opt_data.optarg instead optarg.
833         (parser_parse_next): Likewise.  Use parser->opt_data.optind
834         instead optind.  Use parser->opt_data.optopt instead of optopt.
835         Call _getopt_long_only_r and _getopt_long_r instead of
836         getopt_long_only and getopt_long, and pass the extra argument.
837
838 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
839
840         * iconv/gconv_db.c: Don't define lock as static.  Rename to
841         __gconv_lock and export from the file.
842         * iconv/gconv_int.h: Declare __gconv_lock.
843         * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
844         before __gconv_release_step calls.
845         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
846
847         * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
848
849         * posix/Makefile (tests): Add tst-vfork1.
850         * posix/tst-vfork1.c: New file.
851
852 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
853
854         * sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
855         it in the fixup function declarations.
856         * elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
857         provide dummy definition.  Use macro in fixup function
858         definitions.
859
860         * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
861         RESTORE_PID are defined, use it.
862         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
863
864         * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
865
866         * Makerules: Use extra-modules.mk if modules-names is defined.
867         * extra-modules.mk: New file.
868         * dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
869         * elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
870         * csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
871         compiler.
872         * Makefile (distribute): Add symbol-hacks.h and extra-modules.mk.
873         * sysdeps/generic/symbol-hacks.h: New file.
874         * sysdeps/wordsize-32/symbol-hacks.h: New file.
875         * sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
876         __moddi3, __udivdi3, and __umoddi3.
877         * include/libc-symbols.h: Include <symbol-hacks.h>.
878
879 2004-03-08  Jeroen Dekkers  <jeroen@dekkers.cx>
880
881         * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
882
883         * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
884         Don't use INTUSE with _dl_signal_error.
885
886 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
887
888         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
889         Don't use INTUSE with _dl_signal_error.
890
891 2004-03-08  Richard Henderson  <rth@redhat.com>
892
893         * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
894         in name.
895
896 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
897
898         * config.h.in: Add entry for HAVE_LIBIDN.
899         * configure.in: If libidn add-on present define HAVE_LIBIDN.
900         * Versions.def: Add entry for libcidn.
901
902 2004-03-07  Simon Josefsson  <jas@extundo.com>
903
904         * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
905         [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
906         * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
907         and define IDNA_SUCCESS.
908         (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
909         (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
910         All changes only applicable when glibc is compiled with the libidn
911         add-on.
912
913 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
914
915         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
916         _dl_lookup_symbol_x not _dl_lookup_symbol.
917
918         * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
919         _dl_hwcap into _rtld_global_ro.
920         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
921         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
922         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
923         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
924         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
925         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
926         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
927         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
928         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
929         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
930
931 2004-03-07  Andreas Schwab  <schwab@suse.de>
932
933         * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
934
935 2004-03-07  Andreas Jaeger  <aj@suse.de>
936
937         * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
938         * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
939         * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
940         * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
941         * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
942
943 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
944
945         * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
946         _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
947         dl-procinfo.c from _rtld_global to _rtld_global_ro.
948         * elf/rtld.c: Adjust initializer for _rtld_global_ro.
949         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
950         * elf/dl-libc.c: Likewise.
951         * elf/dl-load.c: Likewise.
952         * sysdeps/i386/dl-procinfo.h: Likewise.
953         * sysdeps/i386/i686/hp-timing.h: Likewise.
954         * sysdeps/ia64/hp-timing.h: Likewise.
955         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
956         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
957         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
958         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
959         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
960         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
961         * string/test-string.h: Define GLRO.
962
963 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
964
965         * elf/dl-lookup.c: We don't need for specialized lookup functions.
966         Combining the functionality does not slow down relocation processing,
967         it might even speed it up a little.
968         * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
969         Add only one function pointer to rtlf_global_ro.
970         * elf/do-lookup.h: Replace #ifs with ifs.
971         * elf/dl-libc.c: Adjust _dl_lookup_* callers.
972         * elf/dl-reloc.c: Likewise.
973         * elf/dl-runtime.c: Likewise.
974         * elf/dl-sym.c: Likewise.
975         * elf/rtld.c: Likewise.  Adjust _rtld_global_ro initialization.
976
977 2004-03-06  Richard Henderson  <rth@redhat.com>
978
979         * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
980         __rtld_global_attribute__): Undef after use.
981         (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
982         if available.
983
984         * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
985         * sysdeps/alpha/Implies: Add alpha/soft-fp.
986         * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
987         * sysdeps/alpha/Subdirs: New file.
988         * sysdeps/alpha/soft-fp/Makefile: New file.
989         * sysdeps/alpha/soft-fp/Versions: New file.
990         * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
991         * sysdeps/alpha/soft-fp/ots_add.c: New file.
992         * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
993         * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
994         * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
995         * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
996         * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
997         * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
998         * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
999         * sysdeps/alpha/soft-fp/ots_div.c: New file.
1000         * sysdeps/alpha/soft-fp/ots_mul.c: New file.
1001         * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
1002         * sysdeps/alpha/soft-fp/ots_sub.c: New file.
1003
1004 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
1005
1006         * configure.in: Recognize --enable-bind-now.
1007         * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
1008         in ld.so.
1009         * Makerules (LDFLAGS-c.so): Add -z now if so configured.
1010         * elf/Makefile ($(objpfx)ld.so): Likewise.
1011         * config.make.in (bind-now): New definition.
1012
1013         * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
1014         * elf/rtld.c (print_statistics): Likewise.
1015
1016         * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
1017         They are the same in both places.
1018         * elf/dl-profile.c: Likewise.
1019         * elf/rtld.c: Likewise.
1020         * sysdeps/generic/ldsodefs.h: Likewise.
1021         * elf/dl-support.c: Define _dl_profile_output variable.  Initialize it.
1022
1023 2004-03-05  Ulrich Drepper  <drepper@redhat.com>
1024
1025         * elf/Versions: Remove functions which are not exported anymore.
1026         * dlfcn/dlerror.c: Call ld.so functions through GLSO.
1027         * dlfcn/dlinfo.c: Likewise.
1028         * elf/dl-close.c: Likewise.
1029         * elf/dl-libc.c: Likewise.
1030         * elf/dl-open.c: Likewise.
1031         * elf/dl-sym.c: Likewise.
1032         * sysdeps/generic/libc-start.c: Likewise.
1033         * elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
1034         functions which are not exported anymore.
1035         * elf/dl-deps.c: Likewise.
1036         * elf/dl-dst.h: Likewise.
1037         * elf/dl-error.c: Likewise.
1038         * elf/dl-fini.c: Likewise.
1039         * elf/dl-init.c: Likewise.
1040         * elf/dl-load.c: Likewise.
1041         * elf/dl-lookup.c: Likewise.
1042         * elf/dl-misc.c: Likewise.
1043         * elf/dl-profile.c: Likewise.
1044         * elf/dl-profstub.c: Likewise.
1045         * elf/dl-reloc.c: Likewise.
1046         * elf/dl-runtime.c: Likewise.
1047         * elf/dl-version.c: Likewise.
1048         * elf/do-lookup.h: Likewise.
1049         * include/dlfcn.h: Likewise.
1050         * sysdeps/generic/dl-cache.c: Likewise.
1051         * sysdeps/generic/dl-fptr.c: Likewise.
1052         * sysdeps/generic/dl-origin.c: Likewise.
1053         * sysdeps/generic/dl-sysdep.c: Likewise.
1054         * sysdeps/generic/dl-tls.c: Likewise.
1055         * sysdeps/generic/ldsodefs.h: Likewise.
1056         * sysdeps/i386/dl-tls.h: Likewise.
1057         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1058         * elf/rtld.c: Likewise.  Export function though _rtld_global_ro.
1059
1060         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
1061         dl_debug_fd to rtld_global_ro.
1062         * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
1063         * elf/dl-misc.c: Likewise.
1064
1065         * malloc/malloc.c: Don't call exported interface in the implementation.
1066
1067         * include/wctype.h: Add libc_hidden_proto for __towctrans.
1068         * wctype/towctrans.c: Add libc_hidden_def.
1069
1070         * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
1071
1072         * posix/regexec.c (transit_state): Remove unused variable
1073         next_state.
1074
1075         * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
1076
1077         * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
1078         Declare _rtld_global_ro and _rtld_local_ro.  Move members of
1079         rtld_global structure into the new one if they are modified only
1080         at startup time.  Define GLRO to access _rtld_global_ro.
1081         * elf/Versions: Export _rtld_global_ro.
1082         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
1083         * elf/dl-conflict.c: Likewise.
1084         * elf/dl-deps.c: Likewise.
1085         * elf/dl-dst.h: Likewise.
1086         * elf/dl-error.c: Likewise.
1087         * elf/dl-fini.c: Likewise.
1088         * elf/dl-init.c: Likewise.
1089         * elf/dl-load.c: Likewise.
1090         * elf/dl-lookup.c: Likewise.
1091         * elf/dl-minimal.c: Likewise.
1092         * elf/dl-open.c: Likewise.
1093         * elf/dl-profile.c: Likewise.
1094         * elf/dl-reloc.c: Likewise.
1095         * elf/dl-runtime.c: Likewise.
1096         * elf/dl-support.c: Likewise.
1097         * elf/dl-version.c: Likewise.
1098         * elf/do-lookup.h: Likewise.
1099         * elf/rtld.c: Likewise.
1100         * sysdeps/generic/dl-cache.c: Likewise.
1101         * sysdeps/generic/dl-origin.c: Likewise.
1102         * sysdeps/generic/dl-sysdep.c: Likewise.
1103         * sysdeps/generic/libc-start.c: Likewise.
1104         * sysdeps/generic/dl-cache.c: Likewise.
1105         * sysdeps/i386/dl-machine.h: Likewise.
1106         * sysdeps/i386/setfpucw.c: Likewise.
1107         * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
1108         * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
1109         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
1110         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
1111         * sysdeps/i386/fpu/fesetround.c: Likewise.
1112         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
1113         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
1114         * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
1115         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
1116         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1117         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
1118         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
1119         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
1120         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
1121         * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
1122         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1123         * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
1124         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
1125         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
1126         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1127         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1128         * sysdeps/x86_64/dl-machine.h: Likewise.
1129         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
1130         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
1131         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1132         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
1133         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
1134         * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
1135         * sysdeps/m68k/dl-machine.h: Likewise.
1136         * sysdeps/ia64/dl-machine.h: Likewise.
1137         * sysdeps/arm/dl-machine.h: Likewise.
1138         * sysdeps/alpha/dl-machine.h: Likewise.
1139         * generic/dl-fptr.c: Likewise.
1140         * mach/hurd/dl-sysdep.c: Likewise.
1141         * unix/sysv/linux/ia64/dl-static.c: Likewise.
1142         * unix/sysv/linux/ia64/getpagesize.c: Likewise.
1143         * unix/sysv/linux/m68k/getpagesize.c: Likewise.
1144         * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
1145
1146 2004-03-04  Ulrich Drepper  <drepper@redhat.com>
1147
1148         * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
1149         * elf/dl-misc.c: Define _dl_name_match_p here.
1150         * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
1151
1152         * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
1153         from the right place.
1154
1155 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
1156
1157         * posix/regex.h (REG_STARTEND): Define.
1158         * posix/regexec.c (regexec): Check for REG_STARTEND.
1159
1160 2004-02-29  Paolo Bonzini  <bonzini@gnu.org>
1161
1162         * posix/regexec.c (transit_state): Don't handle state == NULL.
1163         Move state log and backreference management...
1164         (merge_state_with_log): ... to this function.
1165         (find_recover_state): New function.
1166         (check_matching): Use find_recover_state to get a non-NULL
1167         state when an invalid state is reached.  Compute the amount
1168         of initial characters to be skipped less conservatively when
1169         multi-byte character sets are in use.  Do not check
1170         dfa->nbackref if the state log is NULL.  Initialize err.
1171         (acquire_init_state_context): Expect err to be initialized.
1172         Fix spacing.
1173
1174 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
1175
1176         * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
1177         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1178
1179 2004-03-04  Jakub Jelinek  <jakub@redhat.com>
1180
1181         * iconv/iconv_prog.c (process_block): Handle omit_invalid.
1182         If iconv returns EILSEQ with omit_invalid, continue converting
1183         and return 1 if no other errors are seen.
1184         (main): Set status to EXIT_FAILURE whenever process_* returns
1185         nonzero, but only stop processing further files if iy returns
1186         negative value.
1187
1188 2004-03-03  Jakub Jelinek  <jakub@redhat.com>
1189
1190         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
1191         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
1192         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
1193         Remove.
1194         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
1195         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
1196         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
1197         Remove.
1198         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
1199         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
1200         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
1201         Remove.
1202         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
1203         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
1204         file.
1205         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
1206         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
1207         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
1208         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
1209         (posix_fadvise64): Remove.
1210         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
1211         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
1212         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
1213         (posix_fadvise64): Remove.
1214
1215 2004-03-02  Andreas Schwab  <schwab@suse.de>
1216
1217         * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
1218         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
1219         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
1220
1221 2004-03-01  Ulrich Drepper  <drepper@redhat.com>
1222
1223         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
1224         of return value.
1225         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1226
1227         * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
1228         __ASSUME_GETDENTS32_D_TYPE.
1229         * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
1230         getdents syscall again since it provides d_type information.
1231
1232 2004-02-29  Andreas Jaeger  <aj@suse.de>
1233
1234         * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
1235         required.
1236         (Supported Configurations): Add x86_64-*-linux.
1237
1238 2004-02-28  Ulrich Drepper  <drepper@redhat.com>
1239
1240         * sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
1241
1242 2004-02-27  Jakub Jelinek  <jakub@redhat.com>
1243
1244         * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
1245         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
1246         GL(dl_sysinfo) if non-zero.
1247
1248         * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
1249
1250 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
1251
1252         * nss/getXXbyYY_r.c: Pass result also to the nscd_* function.  Don't
1253         set *result here.
1254         * nscd/nscd_proto.h: Add new argument for pointer to result pointer
1255         to all nscd_* functions.
1256         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter.  Store result
1257         pointer in the address provided by the new parameter if successful.
1258         Otherwise store NULL.  Return zero if no entry found.
1259         (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
1260         it on.
1261         * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter.  Store
1262         result pointer in the address provided by the new parameter if
1263         successful. Otherwise store NULL.  Return zero if no entry found.
1264         (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
1265         __nscd_gethostbyaddr_r): Add new parameter and pass it on.
1266         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter.  Store result
1267         pointer in the address provided by the new parameter if successful.
1268         Otherwise store NULL.  Return zero if no entry found.
1269         (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
1270         it on.
1271
1272 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
1273
1274         * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
1275         retval to -1 on error.
1276
1277 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
1278
1279         * stdlib/canonicalize.c (__realpath): Simplify.
1280
1281         * posix/regcomp.c (parse_expression): Avoid duplication in calls
1282         to build_charclass_op.
1283
1284 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
1285
1286         * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
1287         in vDSO's link_map, don't assume l_addr == 0.  Set GL(dl_sysinfo)
1288         from e_entry only if AT_SYSINFO not present and adjust by l_addr.
1289         Take vDSO into account when inserting rtld into _dl_loaded chain.
1290
1291 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
1292
1293         * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
1294         number of groups in the cache.  Relax the disconnect between the
1295         interface of authdes_getucred and netname2user a bit.
1296         * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
1297         huge arrays on the stack.
1298
1299         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
1300         not cancelable interfaces.
1301
1302 2004-02-24  Arnold D. Robbins  <arnold@skeeve.com>
1303
1304         * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
1305         `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
1306         compiler warning.
1307
1308 2004-02-24  Nelson H.F. Beebe  <beebe@math.utah.edu>
1309
1310         * posix/regcomp.c (parse_expression): Add cast to (const unsigned
1311         char *) in calls to `build_charclass_op'.
1312         * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
1313         to `wcrtomb'.
1314         * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
1315         bitset_mask, re_string_char_size_a, re_string_wchar_at,
1316         re_string_elem_size_at): Change to use prototypes.
1317         (re_string_char_size_at, re_string_wchar_at,
1318         re_string_elem_size_at): Declare as `internal_function'.
1319
1320 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
1321
1322         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
1323         _SC_NGROUPS_MAX.
1324
1325 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
1326
1327         * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
1328         * stdlib/Makefile (tests): Add testmb2.
1329         (testmb2-ENV): New.
1330         * stdlib/testmb2.c: New test.
1331
1332 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
1333
1334         * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
1335         inited yet, try to init it before saving old _res.options.
1336         * posix/Makefile (xtests): Add bug-ga2.
1337         (generated): Add bug-ga2.mtrace and bug-ga2-mem.
1338         (xtests): Depend on bug-ga2-mem.
1339         ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
1340         * posix/bug-ga2.c: New test.
1341
1342 2004-02-22  Ulrich Drepper  <drepper@redhat.com>
1343
1344         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
1345         content also in case of an overflow in the parameter.
1346         Reported by Momchil Velikov <velco@fadata.bg>.
1347
1348 2004-02-21  Ulrich Drepper  <drepper@redhat.com>
1349
1350         * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
1351         In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
1352
1353 2004-02-21  Andreas Jaeger  <aj@suse.de>
1354
1355         * posix/bug-ga1.c: Include <string.h> for memset prototype.
1356
1357         * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
1358
1359         * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
1360         lvalue.
1361
1362 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
1363
1364         * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
1365         (__frame_state_for): Set frame_State_for to abort if the compiler
1366         is using sjlj.
1367         * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
1368         build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
1369
1370 2004-02-20  Alexandre Oliva  <aoliva@redhat.com>
1371
1372         * resolv/Versions: Remove semicolon from the end of libresolv's
1373         GLIBC_2.3.2 version block.
1374         * Versions.def (libresolv): Add GLIBC_2.3.2.
1375
1376 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
1377
1378         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
1379         status register loads.
1380
1381 2004-02-20  Thorsten Kukuk  <kukuk@suse.de>
1382
1383         * nscd/nscd.c (termination_handler): Use _exit instead of exit
1384
1385 2004-02-20  Ulrich Drepper  <drepper@redhat.com>
1386
1387         * nscd/nscd.c (main): Report fork errors.
1388
1389         * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
1390         * dlfcn/dlvsym.c: Likewise.
1391         * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
1392         * elf/dl-fini.c: Likewise.
1393         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1394
1395 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
1396
1397         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
1398         2003-11-27 atan2 test.
1399
1400         * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
1401         with #ifndef __powerpc64__.
1402
1403         * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
1404         DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
1405         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1406         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1407         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1408         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1409         * sysdeps/alpha/dl-sysdep.h: New file.
1410         * sysdeps/ia64/dl-sysdep.h: New file.
1411         * sysdeps/sparc/dl-sysdep.h: New file.
1412
1413 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
1414
1415         * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
1416         for .gnu.linkonce.b.__sparc32_atomic_locks section.
1417         (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
1418
1419 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
1420
1421         * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
1422         Define as static.
1423         * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
1424         because gcc does not allow inline of functions that call setjmp.
1425
1426 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
1427
1428         * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
1429
1430 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
1431
1432         * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
1433         use attribute_relro for _dl_argv.
1434         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1435         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1436         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1437         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1438
1439 2004-02-19  Ulrich Drepper  <drepper@redhat.com>
1440
1441         * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
1442         vfork instead of fork.
1443         * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
1444
1445         * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
1446         prevented system-dependent handling from being used.
1447
1448 2004-02-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1449
1450         * test-skeleton.c (main): If set, use environment variable
1451         TIMEOUTFACTOR to scale test TIMEOUT.
1452
1453 2004-02-18  Ulrich Drepper  <drepper@redhat.com>
1454
1455         * nscd/nscd_conf.c: Include <stdio_ext.h>.
1456
1457 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
1458
1459         * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
1460         as well.
1461
1462         * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
1463         operations.
1464
1465         * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
1466
1467 2004-02-14  Thorsten Kukuk  <kukuk@suse.de>
1468
1469         * nscd/dbg_log.c (set_logfile): Only save name of logfile,
1470         don't open it.
1471         (init_logfile): New function, open logfile if requested.
1472         * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
1473         * nscd/nscd.c (main): Call init_logfile after forking in background.
1474         * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
1475
1476 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
1477
1478         * elf/rtld.c (dl_main): Don't fail execution if file named in
1479         ld.so.preload is not present [BZ #18].
1480
1481         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
1482         changes in last patch.
1483
1484         * posix/regexec.c (transit_state): Fix typo in commented-out code
1485         [BZ #6].
1486
1487         * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
1488         partial bytes [BZ #24].
1489         * posix/Makefile (tests): Add bug-ga1.
1490         * posix/bug-ga1.c: New file.
1491
1492 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
1493
1494         * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
1495         * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
1496         Non-versioned __longjmp for rtld-__longjmp.
1497         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
1498         default version of __longjmp.
1499         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
1500         (__novmx__longjmp): Original version of __longjmp.
1501         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
1502         Non-versioned _setjmp for rtld-_setjmp.
1503         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
1504         as default version of _setjmp.
1505         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
1506         (__novmx_setjmp): Original version of _setjmp.
1507         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
1508         __vmx__sigsetjmp and define as default version of setjmp.
1509         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
1510         (__novmxsetjmp): Original version of setjmp.
1511         * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
1512         * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
1513         Non-versioned __sigsetjmp for rtld-setjmp.
1514         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
1515         as default version of __sigsetjmp.
1516         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
1517         (__novmx__sigsetjmp): Original version of __sigsetjmp.
1518
1519         * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
1520         * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
1521         Non-versioned __longjmp for rtld-__longjmp.
1522         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
1523         default version of __longjmp.
1524         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1525         (__novmx__longjmp): Original version of __longjmp.
1526         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
1527         Non-versioned _setjmp for rtld-_setjmp.
1528         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
1529         as default version of _setjmp.
1530         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1531         (__novmx_setjmp): Original version of _setjmp.
1532         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
1533         __vmx__sigsetjmp and define as default version of setjmp.
1534         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1535         (__novmxsetjmp): Original version of setjmp.
1536         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
1537         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
1538         Non-versioned __longjmp for rtld-__longjmp.
1539         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
1540         default version of __longjmp.
1541         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1542         (__novmx__longjmp): Original version of __longjmp.
1543         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
1544         * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
1545         Non-versioned __sigsetjmp for rtld-setjmp.
1546         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
1547         as default version of __sigsetjmp.
1548         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1549         (__novmx__sigsetjmp): Original version of __sigsetjmp.
1550         * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
1551         * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
1552         Non-versioned __sigsetjmp for rtld-setjmp.
1553         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
1554         as default version of __sigsetjmp.
1555         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
1556         (__novmx__sigsetjmp): Original version of __sigsetjmp.
1557
1558         * sysdeps/powerpc/Dist: New File.
1559         * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
1560         and novmx-sigjmp.c
1561         * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
1562         __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
1563         __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
1564         and __vmx__libc_siglongjmp.
1565         * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
1566         JB_SIZE to add VMX regs to __jmp_buf.
1567         * sysdeps/powerpc/longjmp.c: New file.
1568         * sysdeps/powerpc/novmxsetjmp.h: New file.
1569         * sysdeps/powerpc/novmx-longjmp.c: New file.
1570         * sysdeps/powerpc/novmx-sigjmp.c: New file.
1571         * sysdeps/powerpc/sigjmp.c: New file.
1572
1573 2004-02-13  Jakub Jelinek  <jakub@redhat.com>
1574
1575         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
1576         Define.
1577         (__lrintl, lrintl): Remove.
1578         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
1579         strong_alias spelling.
1580         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
1581         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
1582
1583 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
1584
1585         * posix/getopt.h: Add some non-gcc support.  Patch by Aharon Robbins.
1586
1587 2004-02-12  Mark Brown  <bmark@us.ibm.com>
1588
1589         * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
1590
1591 2004-02-12  Jakub Jelinek  <jakub@redhat.com>
1592
1593         * sysdeps/powerpc/fpu/s_lrint.c: Move to...
1594         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
1595         * sysdeps/powerpc/fpu/s_llrint.c: Move to...
1596         * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
1597         * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
1598         * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
1599         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
1600         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
1601         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
1602
1603         * math/libm-test.inc (lrint_test): Add new test.
1604         (llrint_test, lround_test, llround_test): Likewise.
1605         * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
1606         with result taking up 48 bits.
1607         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
1608         * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
1609         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
1610         with result taking up 31 bits.
1611
1612 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
1613
1614         * locale/programs/locale.c (show_locale_vars): Don't print a value
1615         for LANG if it is not set.
1616
1617 2004-02-11  Jakub Jelinek  <jakub@redhat.com>
1618
1619         * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
1620         (find_collation_sequence_value): Don't look beyond end of
1621         SYMB_EXTRAMB table.
1622         * posix/Makefile (tests): Add bug-regex23.
1623         (bug-regex23-ENV): New.
1624         * posix/bug-regex23.c: New file.
1625
1626 2004-02-10  Roland McGrath  <roland@frob.com>
1627
1628         * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
1629         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
1630
1631         * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
1632         * sysdeps/mach/configure.in: ... here.
1633         * sysdeps/mach/hurd/configure: Regenerated.
1634         * sysdeps/mach/configure.in: Regenerated.
1635
1636 2004-02-10  Ulrich Drepper  <drepper@redhat.com>
1637
1638         * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
1639         temporary copies of the variables accumulate on the stack.
1640
1641         * stdio-common/_i18n_number.h: Finish last patch.
1642
1643 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1644
1645         * sysdeps/i386/i686/memcmp.S: New file.  Patch by HJ Lu.
1646
1647 2003-12-05  Roland McGrath  <roland@redhat.com>
1648
1649         * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
1650         for vm86@GLIBC_2.0 version.  Add new vm86@GLIBC_2.3.4.
1651         * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
1652         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
1653
1654 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1655
1656         * nis/ypclnt.c: Cleanup last patch.
1657
1658 2004-02-09  Andreas Jaeger  <aj@suse.de>
1659
1660         * configure.in: Remove glibcbug creation.
1661         * configure: Regenerated.
1662
1663         * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
1664
1665 2004-02-03  Thorsten Kukuk  <kukuk@suse.de>
1666
1667         * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
1668         of duplicated code from __yp_bind.
1669         (__yp_bind_file): New, binding dir code from __yp_bind.
1670         (__yp_bind_client_create): New, ypbind code from __yp_bind.
1671         (__ypclnt_call): New, make NIS query.
1672         (do_ypcall): At first use cached data, then try data from
1673         binding directory, after this ask ypbind for a working ypserv.
1674         Based on a patch from Jeff Bastian <jmbastia@ti.com> and
1675         Chris Barrera <cbarrera@ti.com>
1676
1677 2004-01-19  Roland McGrath  <roland@redhat.com>
1678
1679         * configure.in: Don't set CCVERSION.
1680         * configure: Regenerated.
1681         * glibcbug.in: File removed.
1682         * Makefile (install-bin-script): Remove glibcbug.
1683         (glibcbug): Target removed.
1684         (distclean-1): Don't rm glibcbug.
1685         (distribute): Remove glibcbug.in.
1686
1687 2004-02-09  Roland McGrath  <roland@redhat.com>
1688
1689         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
1690         24, not 23.
1691
1692 2004-01-29  Roland McGrath  <roland@redhat.com>
1693
1694         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
1695         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
1696
1697 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1698
1699         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
1700         the buffers.  Some thread might be using a stream.
1701
1702 2004-02-09  Andreas Jaeger  <aj@suse.de>
1703
1704         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
1705         Patch by Jan Beulich <jbeulich@novell.com>.
1706
1707 2004-02-09  Andreas Schwab  <schwab@suse.de>
1708
1709         * include/rpc/rpc.h: Declare thread variables with their correct type.
1710         * sunrpc/clnt_perr.c: Don't cast thread variables.
1711         * sunrpc/clnt_raw.c: Likewise.
1712         * sunrpc/clnt_simp.c: Likewise.
1713         * sunrpc/key_call.c: Likewise.
1714         * sunrpc/svcauth_des.c: Likewise.
1715         * sunrpc/svc.c: Likewise.
1716         * sunrpc/svc_raw.c: Likewise.
1717         * sunrpc/svc_simple.c: Likewise.
1718
1719 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1720
1721         * stdio-common/_i18n_number.h: Support printing localized decimal
1722         point and thousand separator.
1723         * wctype/wctrans.c: Add __wctrans alias.
1724         * include/wctype.h: Declare __wctrans.
1725         Based on a patch by Hamed Malek.
1726
1727         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
1728         other than the status bits [BZ #10].
1729
1730 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
1731
1732         Make stream locking operations really work.
1733         * misc/Makefile (CFLAGS-mntent_r.c): Define.
1734         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
1735         (CFLAGS-putspent.c): Define.
1736         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
1737         (CFLAGS-putgrent.c): Define.
1738         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
1739         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1740
1741         * elf/dl-load.c (lose): Use noinline attribute instead of silly
1742         alloca to prevent inlining.
1743         * elf/dl-runtime.c (fixup): Likewise.
1744         (profile_fixup): Likewise.
1745
1746         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
1747         Initialize width correctly.
1748
1749 2004-02-07  Andreas Jaeger  <aj@suse.de>
1750
1751         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
1752         lvalue.
1753         (internal_ucs4le_loop_single): Likewise.
1754         (ucs4_internal_loop): Likewise.
1755         (BODY): Likewise.
1756         (internal_ucs4_loop_single): Likewise.
1757         * iconvdata/iso8859-1.c (BODY): Likewise.
1758         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
1759         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
1760         * iconvdata/gb18030.c (BODY): Likewise.
1761         * iconvdata/armscii-8.c (BODY): Likewise.
1762         * stdlib/msort.c (msort_with_tmp): Likewise.
1763
1764         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
1765         as lvalue.
1766
1767 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
1768
1769         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
1770         weak extern.
1771         (__elf_machine_runtime_setup): Invalidate the instruction cache over
1772         the whole range of the PLT.
1773
1774 2004-02-06  Andreas Schwab  <schwab@suse.de>
1775
1776         * posix/regcomp.c (build_range_exp): Fix off-by-one.
1777         (parse_bracket_exp): Likewise.
1778
1779 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
1780
1781         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
1782         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
1783
1784 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
1785
1786         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
1787         (re_search_internal): Pass new parameter to check_matching.
1788         (check_matching): Unless a parenthesized group is found at the
1789         beginning of the regexp, advance P_MATCH_FIRST until we entered
1790         a state different from the initial state.
1791
1792 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
1793
1794         * math/libm-test.inc (lround_test): Add new test.
1795         (llround_test): Likewise.
1796         (lrint_test): Likewise.
1797         (llrint_test): Likewise.
1798         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
1799         with result taking up 20 bits.
1800         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
1801         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
1802         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
1803         case with result taking up 31 bits.
1804         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
1805
1806         * po/nl.po: Update from translation team.
1807
1808 2004-01-30  Andreas Schwab  <schwab@suse.de>
1809
1810         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
1811         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
1812         SEGV_PSTKOVF): Remove underscore prefix from definition.
1813
1814 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
1815
1816         Merge regex changes in gawk.
1817         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
1818         of collation elements.
1819         * posix/regex.c: Include limits.h.
1820         * posix/regex.h: Document REG_ECOLLATE correctly.
1821         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
1822
1823 2004-01-24  Andreas Jaeger  <aj@suse.de>
1824
1825         * malloc/obstack.h: Import gnulib version.
1826         * malloc/obstack.c: Likewise.
1827
1828 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
1829
1830         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
1831         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
1832         increment dl_load_adds.
1833         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
1834         with equivalent GL(dl_load_adds - GL(dl_nloaded).
1835         (dl_iterate_phdr): Likewise.
1836         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
1837         * elf/dl-support.c: Remove global variable _dl_load_subs.
1838         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
1839         _dl_load_subs member.
1840
1841 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
1842
1843         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
1844         (_dl_start): And neither here.
1845         (dl_main): Set GL(dl_loaded)->l_relro_* and
1846         GL(dl_rtld_map)->l_relro_*.
1847
1848 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
1849
1850         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
1851         _dl_load_adds and _dl_load_subs.
1852         * elf/dl-support.c (_dl_load_adds): New variable.
1853         (_dl_load_subs): Likewise.
1854         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
1855         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
1856         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
1857         dlpi_subs.
1858         * include/link.h: Likewise.
1859         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
1860         and dlpi_subs members.
1861         (dl_iterate_phdr): Likewise.
1862         * elf/tst-dlmodcount.c: New file.
1863         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
1864         (tests): If build-shared, mention tst-dlmodcount.
1865         ($(objpfx)tst-dlmodcount): If build-shared, build and
1866         run tst-dlmodcount.
1867
1868 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
1869
1870         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
1871         into...
1872         (_dl_protect_relro): New routine.
1873         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
1874         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
1875         from bootstrap_map.
1876         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
1877         Call _dl_protect_relro for libraries if prelinking.
1878
1879 2004-01-23  Richard Henderson  <rth@redhat.com>
1880
1881         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
1882         * sysdeps/alpha/fpu/Versions (libm): Likewise.
1883         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
1884         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
1885
1886 2004-01-22  Andreas Jaeger  <aj@suse.de>
1887
1888         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
1889         avoid warnings for builtin function log2.
1890
1891         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
1892         information.
1893
1894 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
1895
1896         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
1897         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
1898         Patch by Davide Libenzi.
1899
1900         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1901         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
1902
1903         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
1904
1905         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
1906         instead of loff_t.  Include <fcntl.h>.
1907         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
1908         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
1909         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
1910         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
1911         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1912         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1913         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
1914         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1915         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1916         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1917         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1918         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1919
1920         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
1921
1922         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
1923
1924 2003-12-31  Bruno Haible  <bruno@clisp.org>
1925
1926         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
1927         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
1928         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
1929         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
1930         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
1931         0x00 0x20. Don't map U+2500..U+25E3.
1932
1933 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
1934
1935         * posix/regexec.c (get_subexp): Remove bkref_str variable.
1936         Extend buffers if needed before comparisons.
1937         (get_subexp_sub): Handle clean_state_log_if_needed failure.
1938
1939 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
1940
1941         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
1942         atomic_decrement.  Patch by Davin McCall.
1943
1944 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
1945
1946         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
1947         (__sim_disabled_exceptions, __sim_round_mode): Declare with
1948         hidden data and nocommon.
1949         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
1950         (__sim_disabled_exceptions, __sim_round_mode): Use
1951         libc_hidden_proto.
1952         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
1953         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
1954
1955 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
1956
1957         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
1958         PT_IA_64_HP_STACK.
1959
1960 2004-01-16  Richard Henderson  <rth@redhat.com>
1961
1962         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
1963         (__libc_enable_secure_internal): Likewise.
1964
1965         * elf/dl-load.c: Don't declare __libc_stack_end.
1966         * sysdeps/generic/libc-start.c: Likewise.
1967         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
1968         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
1969         * sysdeps/generic/backtrace.c: Likewise.
1970
1971 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1972
1973         * Versions.def: Add GLIBC_2.3.4.
1974
1975 2004-01-15  Richard Henderson  <rth@redhat.com>
1976
1977         * sysdeps/unix/alpha/sysdep.h: Revert last change.
1978
1979 2004-01-15  Richard Henderson  <rth@redhat.com>
1980
1981         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
1982
1983         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
1984         !samegp relocation.
1985
1986 2004-01-15  Richard Henderson  <rth@redhat.com>
1987
1988         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
1989         ucontext-offsets.sym.
1990         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
1991         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
1992         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
1993         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
1994         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
1995
1996 2004-01-15  Richard Henderson  <rth@redhat.com>
1997
1998         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
1999         __syscall_, move nop inside, adjust users by +4.
2000
2001 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2002
2003         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
2004         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
2005         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
2006         symbols.
2007         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
2008         gen-as-const-headers.
2009         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
2010         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
2011         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
2012         * sysdeps/unix/sysv/linux/kernel-features.h
2013         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
2014         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
2015         Declare mcontext_t inline and include altivec state for 64-bit.
2016         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
2017         versions for setcontext, getcontext, and swapcontext.
2018
2019         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
2020         versions for setcontext, getcontext, swapcontext, and makecontext.
2021         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
2022         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
2023         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
2024         Compatible with GLIBC_2.3.3 release.
2025         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
2026         (__makecontext): Use parm save area instead of compiler_dw to hold
2027         context pointer.
2028         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
2029         (__setcontext):  Upgrade to restore Altivec regs and version
2030         GLIBC_2_3_4.
2031         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
2032         Compatible with GLIBC_2.3.3 release.
2033         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
2034         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
2035         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
2036         Compatible with GLIBC_2.3.3 release.
2037         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
2038         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
2039
2040 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
2041
2042         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
2043         versions for setcontext, getcontext, swapcontext, and makecontext.
2044         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
2045         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
2046         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
2047         Compatible with GLIBC_2.3.3 release.
2048         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
2049         (__makecontext): Upgrade to align for Altivec regs and version
2050         GLIBC_2_3_4.
2051         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
2052         Compatible with GLIBC_2.3.3 release.
2053         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
2054         (__setcontext):  Upgrade to restore Altivec regs and version
2055         GLIBC_2_3_4.
2056         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
2057         Compatible with GLIBC_2.3.3 release.
2058         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
2059         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
2060         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
2061         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
2062         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
2063         (_UC_VSCR, _UC_VRSAVE): Define.
2064         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
2065         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
2066
2067 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
2068
2069         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
2070
2071 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
2072
2073         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
2074         parameter type.
2075
2076 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
2077
2078         * elf/elf.h: Fix typo in comment.
2079
2080         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
2081         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
2082
2083         * resolv/resolv.h: Add RES_USEBSTRING.
2084         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
2085         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
2086         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
2087         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
2088         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
2089         Otherwise use the two nibble formats.
2090
2091 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
2092
2093         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
2094         * config.h.in: Add entry for HAVE_Z_RELRO.
2095         * include/libc-symbols.h: Define attribute_relro.
2096         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
2097         max_capstrlen, and max_dirnamelen definitions.
2098         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
2099         load_time, start_time, library_path, preloadlist, version_info,
2100         any_debug.
2101         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
2102         it to print_statistics.  Change print_statistics accordingly.
2103         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
2104         attribute_relro instead of explicitly assigning variable to the
2105         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
2106         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
2107         _dl_argv, _dl_argv_internal with attribute_relro.
2108
2109 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
2110
2111         * Makerules (gen-as-const): Don't silently continue on failure.
2112
2113 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2114
2115         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2116         rtld_hidden_data_def.
2117
2118 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
2119
2120         * libio/libio.h: Add const to function tables types.
2121         * libio/libioP.h: Likewise.
2122         * login/utmp-private.h: Likewise.
2123         * libio/fileops.c: Add const to jump table variable definition.
2124         * libio/genops.c: Likewise.
2125         * libio/iofopncook.c: Likewise.
2126         * libio/iopopen.c: Likewise.
2127         * libio/memstream.c: Likewise.
2128         * libio/obprintf.c: Likewise.
2129         * libio/oldfileops.c: Likewise.
2130         * libio/oldiopopen.c: Likewise.
2131         * libio/strops.c: Likewise.
2132         * libio/vsnprintf.c: Likewise.
2133         * libio/vswprintf.c: Likewise.
2134         * libio/wfileops.c: Likewise.
2135         * libio/wstrops.c: Likewise.
2136         * login/getutent_r.c: Likewise.
2137         * login/getutid_r.c Likewise.
2138         * login/getutline_r.c: Likewise.
2139         * sysdeps/generic/utmp_file.c: Likewise.
2140
2141 2004-01-09  Bruno Haible  <bruno@clisp.org>
2142
2143         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
2144         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
2145         (_nl_load_domain): Treat major revision 1 like major revision 0.
2146
2147 2004-01-11  Bruno Haible  <bruno@clisp.org>
2148
2149         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
2150         width or precision has been seen.
2151
2152 2004-01-08  Bruno Haible  <bruno@clisp.org>
2153
2154         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
2155         dependent segment not known to this version of the library, ignore
2156         the string pair instead of crashing.
2157
2158 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2159
2160         * configure.in: Rewrite test to give gcc to clean up after itself.
2161         Patch by Greg Schafer.
2162
2163         * posix/regex.c: Support crappy compilers and platforms which have
2164         problems with alloca.
2165         * posix/regex_internal.h: Likewise.
2166         Patch by Paolo Bonzini.
2167
2168 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
2169
2170         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
2171         Drop code to support this, it is never true.
2172         (build_range_exp) [!_LIBC]: Do not create a range
2173         in MBCSET for a single-byte character set.
2174         (build_range_exp) [_LIBC]: Do not create a range
2175         in MBCSET for a single-byte character set without
2176         collation elements.
2177         (init_dfa): Do not conditionalize on _LIBC, it
2178         just makes the code less clear.
2179         (parse_bracket_exp): Use NON_MATCH variable in
2180         addition to "mbcset->non_match", not as an
2181         alternative.
2182         (build_charclass_op): rename NOT parameter to
2183         NON_MATCH, use it instead of declaring a variable.
2184         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
2185         if the character set is single-byte.
2186
2187 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
2188
2189         * posix/regcomp.c (peek_token_bracket): Check remaining
2190         string length before re_string_peek_byte (x, 1).
2191         (parse_bracket_symbol): Likewise.
2192         * posix/regex_internal.h (re_string_is_single_byte_char): Return
2193         true at last byte in the string.
2194         * posix/bug-regex22.c (main): Add new test.
2195
2196 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2197
2198         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
2199         .data.rel.ro.
2200
2201         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
2202
2203         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
2204         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2205         rtld_hidden_def and move into .data.rel.ro section.
2206         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
2207         rtld_hidden_proto.
2208         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
2209         if !SHARED.
2210
2211 2004-01-13  Richard Henderson  <rth@redhat.com>
2212
2213         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
2214
2215 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2216
2217         * sysdeps/unix/sysv/linux/dl-execstack.c
2218         (_dl_make_stack_executable): Move common code in front.  Use
2219         __builtin_expect.
2220
2221         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
2222         challenge for caller.
2223         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
2224         member in rtld_global appropriately.
2225         * elf/dl-support.c: Likewise.
2226         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
2227         Pass it on to the changed function.
2228         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
2229
2230 2004-01-13  Richard Henderson  <rth@redhat.com>
2231
2232         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
2233         Cast old up to uint64_t before back down to inner width.
2234         (__arch_compare_and_exchange_xxx_16_int): Likewise.
2235         (__arch_compare_and_exchange_xxx_32_int): Likewise.
2236         (__arch_compare_and_exchange_xxx_64_int): Likewise.
2237         (__arch_compare_and_exchange_val_8_int): Cast result to
2238         the type of the memory.
2239         (__arch_compare_and_exchange_val_16_int): Likewise.
2240         (__arch_compare_and_exchange_val_32_int): Likewise.
2241         (__arch_compare_and_exchange_val_64_int): Likewise.
2242         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
2243         (atomic_compare_and_exchange_bool_rel): Likewise.
2244
2245         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
2246         based on HAVE___THREAD instead of USE_TLS.
2247
2248         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
2249         (__adjtimex_tv64): Use it.
2250
2251         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
2252         to void* rather than directly to the compatibility structure type.
2253         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
2254
2255         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
2256         Forward declare.
2257
2258 2004-01-13  Richard Henderson  <rth@redhat.com>
2259
2260         * Versions.def (libm): Add GLIBC_2.3.3.
2261         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
2262         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
2263         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
2264         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
2265         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
2266         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
2267         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
2268         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
2269         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
2270         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
2271         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
2272         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
2273         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
2274         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
2275         functions for gcc 3.3.
2276
2277         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
2278         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
2279         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
2280         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
2281         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
2282         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
2283         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
2284         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
2285         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
2286         weak_alias if the function name has been #defined.
2287
2288         * math/cabsf.c: Move ...
2289         * sysdeps/generic/cabsf.c: ... here.
2290         * math/cargf.c: Move ...
2291         * sysdeps/generic/cargf.c: ... here.
2292         * math/cimagf.c: Move ...
2293         * sysdeps/generic/cimagf.c: ... here.
2294         * math/conjf.c: Move ...
2295         * sysdeps/generic/conjf.c: ... here.
2296         * math/crealf.c: Move ...
2297         * sysdeps/generic/crealf.c: ... here.
2298
2299 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2300
2301         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
2302         LDFLAGS.so and LDFLAGS-rtld.
2303         (+link): Add relro-LDFLAGS.
2304         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
2305         __libc_thread_subfreeres sections after .jcr section.
2306         * config.make.in: Add have-z-relro.
2307         * configure.in: Add check for -z relro option.
2308         * include/link.h (struct link_map): Add relro_addr and relro_size
2309         members.
2310         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
2311         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
2312         part of loaded segments read-only.
2313         * elf/elf.h: Define PT_GNU_RELRO.
2314         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
2315         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
2316         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
2317         relocations.
2318
2319 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
2320
2321         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
2322
2323 2004-01-11  Andreas Jaeger  <aj@suse.de>
2324
2325         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
2326
2327 2004-01-10  Andreas Jaeger  <aj@suse.de>
2328
2329         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
2330         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
2331         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2332         * sysdeps/x86_64/strcspn.S: Likewise.
2333         * sysdeps/x86_64/strspn.S: Likewise.
2334
2335 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
2336
2337         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
2338         right before syscall and cfi_startproc before PSEUDO_END.
2339         Clear %rbp in thread_start.
2340
2341 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
2342
2343         * posix/regcomp.c (regcomp): Fix comment typo.
2344         (regfree): Free preg->translate, clear buffer, allocated, fastmap
2345         and translate fields.
2346
2347         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
2348         argument to unsigned RE_TRANSLATE_TYPE.
2349         * posix/regex_internal.h (re_string_t): Change trans type to
2350         unsigned RE_TRANSLATE_TYPE.
2351         * posix/regex_internal.c (re_string_construct_common): Cast
2352         trans to unsigned RE_TRANSLATE_TYPE.
2353         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
2354         path if pstr->trans.  Never translate the character through
2355         pstr->trans.
2356         * posix/Makefile (tests): Add bug-regex22.
2357         (bug-regex22-ENV): Set.
2358         * posix/bug-regex22.c: New test.
2359
2360 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
2361
2362         * posix/regex_internal.c (re_node_set_add_intersect,
2363         re_node_set_merge): Rewritten.
2364         (re_node_set_insert, re_node_set_remove_at):
2365         Avoid memmove, we know what direction we should copy and that we
2366         are copying 32-bit words.
2367         (re_node_set_compare): Iterate backwards.
2368
2369 2003-12-30  Paul Eggert  <eggert@twinsun.com>
2370
2371         * time/mktime.c (verify): New macro.
2372         (time_t_is_integer, twos_complement_arithmetic,
2373         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
2374         C99_integer_division): Document these longstanding assumptions in the
2375         code, and verify them at compile-time.
2376
2377 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
2378
2379         * posix/regex_internal.h (re_match_context_t): Add dfa member.
2380         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
2381         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
2382         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
2383         sift_states_backward, update_cur_sifted_state, check_dst_limits,
2384         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
2385         check_subexp_matching_top, transit_state_sb, transit_state_mb,
2386         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
2387         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
2388         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
2389         (re_search_internal): Initialize mctx.dfa.
2390
2391         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
2392
2393         * posix/regex_internal.h (re_dfa_t): Add syntax field.
2394         * posix/regcomp.c (parse): Initialize dfa->syntax.
2395         * posix/regexec.c (acquire_init_state_context,
2396         prune_impossible_nodes, check_matching, check_halt_state_context,
2397         proceed_next_node, sift_states_iter_mb, sift_states_backward,
2398         update_cur_sifted_state, sift_states_bkref, transit_state,
2399         transit_state_sb, transit_state_mb, transit_state_bkref,
2400         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
2401         build_trtable): Remove preg argument, add dfa argument instead
2402         and remove dfa = preg->buffer initialization in the body.
2403         Adjust all callers.
2404         (check_node_accept_bytes, group_nodes_into_DFAstates,
2405         check_node_accept): Likewise.  Use dfa->syntax instead of
2406         preg->syntax.
2407         (check_arrival_add_next_nodes): Remove preg argument.
2408
2409         * posix/regex_internal.h (re_match_context_t): Make input
2410         re_string_t instead of a pointer to it.
2411         * posix/regex_internal.c (re_string_construct_common): Don't clear
2412         pstr here...
2413         (re_string_construct): ... but only here.
2414         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
2415         initialize fields to zero.
2416         (re_search_internal): Move input into mctx.input.
2417         (acquire_init_state_context, check_matching,
2418         check_halt_state_context, proceed_next_node,
2419         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
2420         transit_state, transit_state_sb, transit_state_mb,
2421         transit_state_bkref, get_subexp, check_arrival,
2422         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
2423         Change mctx->input into &mctx->input and mctx->input->field into
2424         mctx->input.field.
2425
2426 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
2427             Paolo Bonzini  <bonzini@gnu.org>
2428
2429         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
2430         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
2431         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
2432         (re_string_context_at, re_string_reconstruct): Remove last argument.
2433         * posix/regex_internal.c (re_string_allocate): Initialize
2434         pstr->word_char and pstr->word_ops_used.
2435         (re_string_context_at): Remove newline_anchor argument.
2436         Use input->newline_anchor instead, swap && conditions.
2437         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
2438         Use input->word_char bitmap instead of IS_WORD_CHAR.
2439         (re_string_reconstruct): Likewise.
2440         Adjust re_string_context_at caller.
2441         * posix/regexec.c (acquire_init_state_context,
2442         check_halt_state_context, transit_state, transit_state_sb,
2443         transit_state_mb, transit_state_bkref, check_arrival,
2444         check_node_accept): Adjust re_string_context_at and
2445         re_string_reconstruct callers.
2446         (re_search_internal): Likewise.  Set input.newline_anchor.
2447         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
2448         * posix/regcomp.c (init_word_char): Change return type to void.
2449         Set dfa->word_ops_used.
2450         (free_dfa_content): Don't free dfa->word_char.
2451         (parse_expression): Remove error handling for init_word_char.
2452
2453 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
2454
2455         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
2456         bitfield.
2457
2458         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
2459
2460 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
2461
2462         * posix/getconf.c: Update copyright year.
2463         * nss/getent.c: Likewise.
2464         * nscd/nscd_nischeck.c: Likewise.
2465         * iconv/iconvconfig.c: Likewise.
2466         * iconv/iconv_prog.c: Likewise.
2467         * elf/ldconfig.c: Likewise.
2468         * catgets/gencat.c: Likewise.
2469         * csu/version.c: Likewise.
2470         * elf/ldd.bash.in: Likewise.
2471         * elf/sprof.c (print_version): Likewise.
2472         * locale/programs/locale.c: Likewise.
2473         * locale/programs/localedef.c: Likewise.
2474         * nscd/nscd.c (print_version): Likewise.
2475         * debug/xtrace.sh: Likewise.
2476         * malloc/memusage.sh: Likewise.
2477         * malloc/mtrace.pl: Likewise.
2478
2479 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
2480
2481         * stdlib/strfmon.c: Make formatting of left-justified currency
2482         values match the the POSIX standard.  When using format string
2483         "[%-14#5.4n]" to print -123.45, the result should be
2484         "[-$   123.4500 ]", not "[-$123.4500    ]".
2485
2486 2004-01-01  Andreas Jaeger  <aj@suse.de>
2487
2488         * resolv/Makefile (generated): New.
2489
2490 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
2491
2492         * CONFORMANCE: Update.
2493
2494 2003-12-30  Paul Eggert  <eggert@twinsun.com>
2495
2496         * time/mktime.c: (my_mktime_localtime_r):
2497         Remove.  All uses changed to __localtime_r.
2498         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
2499         get its implementation.
2500         Fix compile-command to allow for TIME_R_POSIX.
2501
2502         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
2503         Remove.  All uses changed to __localtime_r and __gmtime_r.
2504         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
2505         Include "time_r.h" to get their implementations.
2506
2507         * time/timegm.c: Allow use in GNU applications outside glibc.
2508         [defined HAVE_CONFIG_H]: Include <config.h>.
2509         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
2510         Define __gmtime_r, and declare __mktime_internal.
2511         (timegm): Define via a prototype, since we can safely assume C89 now.
2512
2513         * time/mktime.c (check_result): Use less-confusing report format.
2514         "long" -> "long int", as per usual GNU style.
2515         (main): Likewise.
2516         Don't loop if the iteration overflows time_t.
2517         Allow a negative step in the iteration.
2518
2519         * time/mktime.c: Assume freestanding C89 or better.
2520         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
2521         assume they're 1.
2522         (__P): Remove; not used.
2523         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
2524         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
2525         Prototypes use const * where appropriate.
2526         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
2527         which caused the testing code to dump core on some hosts.
2528
2529 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
2530
2531         * locale/setlocale.c (setlocale): Avoid duplicating locale names
2532         if we can reuse old strings.
2533
2534         * inet/rcmd.c: Provide better error message in case of unknown
2535         host.  Remove USE_IN_LIBIO.
2536
2537         * nscd/nscd.init: Updated version, more conforming with current
2538         init file standards.
2539
2540         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
2541         /var/run/nscd directory.
2542         (_PATH_NSCDSOCKET): Likewise.
2543
2544         * test-skeleton.c (timeout_handler): Fix error message.
2545
2546         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
2547         CNT == 0.
2548
2549 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
2550
2551         * posix/regexec.c (get_subexp): Only set bkref_str after the first
2552         loop, use buf + bkref_str_off in the loop instead.
2553         * posix/bug-regex11.c (tests): Add 3 new tests.
2554
2555         * posix/regexec.c (clean_state_log_if_need): Rename to...
2556         (clean_state_log_if_needed): ...this.
2557         (transit_state_mb, get_subexp_sub): Adjust callers.
2558
2559         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
2560         failed.  Reported by Steve Grubb.
2561
2562 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
2563
2564         * elf/elf.h: Add a few definitions from Solaris 9.
2565
2566 2003-12-29  Andreas Schwab  <schwab@suse.de>
2567
2568         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
2569         $(fno_unit_at_a_time) to avoid reordering assembler output.
2570
2571 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
2572
2573         * posix/regexec.c (re_copy_regs): Revert comment change.
2574         Avoid memory leak if realloc fails.
2575         (proceed_next_node): Return -2 if re_node_set_insert fails.
2576         Return -2 if push_fail_stack fails.
2577         (push_fail_stack): Change fs->alloc only after successful realloc.
2578         (pop_fail_stack): Formatting.
2579         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
2580         (check_arrival_add_next_nodes): Merge identical statements
2581         from if branches.
2582
2583         * signal/Makefile (tests): Add tst-raise.
2584         * signal/tst-raise.c: New test.
2585
2586 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
2587
2588         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
2589
2590         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
2591         (push_fail_stack): Add missing check for failed memory allocation.
2592
2593         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
2594         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
2595         _IO_putwc_unlocked.
2596
2597 2003-12-28  Andreas Jaeger  <aj@suse.de>
2598
2599         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
2600         overflow for 0 as argument. Raise Invalid exception for negative args.
2601         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
2602         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
2603         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
2604         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
2605         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
2606         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
2607         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
2608         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
2609         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
2610         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
2611         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
2612
2613         * math/libm-test.inc (yn_test): Expect invalid exception for
2614         negative arguments.
2615         (y0_test): Likewise.
2616         (y1_test): Likewise.
2617
2618         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
2619         execptions for exp(NaN).
2620
2621 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
2622
2623         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
2624         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
2625         among the tokens, rather than among the epsilon-transiting nodes.
2626         (re_token_t): Add the opt_subexp flag.
2627         * posix/regcomp.c (optimize_utf8, calc_first,
2628         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
2629         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
2630         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
2631         OP_DUP_ASTERISK and marking optional subexpressions
2632         as such using mark_opt_subexp.
2633         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
2634         and pass it to update_regs.
2635         (update_regs): Use the PREV_INDEX_MATCH parameter, together
2636         with the opt_subexp flag, in order to discard a final empty
2637         match of a repeated subexpression.
2638         * posix/BOOST.tests: Adjust test vectors.
2639         * posix/PCRE.tests: Likewise.
2640         * posix/rxspencer/tests: Likewise.
2641
2642 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
2643
2644         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
2645         with omitted middle operand.
2646
2647 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
2648
2649         * posix/regcomp.c: Remove C99-ism.
2650         * posix/tst-rxspencer.c: Likewise.
2651         Based on a patch by Alex Davis <alex14641@yahoo.com>.
2652
2653 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
2654
2655         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
2656         (re_string_allocate, re_string_construct, re_string_reconstruct,
2657         re_string_realloc_buffers, build_wcs_buffer,
2658         build_wcs_upper_buffer, build_upper_buffer,
2659         re_string_translate_buffer, re_string_destruct,
2660         re_string_elem_size_at, re_string_char_size_at,
2661         re_string_wchar_at, re_string_context_at,
2662         re_node_set_alloc, re_node_set_init_1
2663         re_node_set_init_2, re_node_set_init_copy,
2664         re_node_set_add_intersect, re_node_set_init_union,
2665         re_node_set_merge, re_node_set_insert
2666         re_node_set_compare, re_node_set_contains
2667         re_node_set_remove_at, re_dfa_add_node,
2668         re_acquire_state, re_acquire_state_context,
2669         free_state): Add internal_function to declaration.
2670
2671         * posix/regexec.c (match_ctx_init, match_ctx_clean,
2672         match_ctx_free, match_ctx_free_subtops,
2673         match_ctx_add_entry, search_cur_bkref_entry,
2674         match_ctx_clear_flag, match_ctx_add_subtop,
2675         match_ctx_add_sublast, sift_ctx_init,
2676         re_search_internal, re_search_2_stub, re_search_stub,
2677         re_copy_regs, acquire_init_state_context,
2678         prune_impossible_nodes, check_matching,
2679         check_halt_node_context, check_halt_state_context
2680         update_regs, proceed_next_node, push_fail_stack,
2681         pop_fail_stack, set_regs, free_fail_stack_return,
2682         sift_states_iter_mb, sift_states_backward
2683         update_cur_sifted_state, add_epsilon_src_nodes,
2684         sub_epsilon_src_nodes, check_dst_limits,
2685         check_dst_limits_calc_pos, check_subexp_limits,
2686         sift_states_bkref, clean_state_log_if_need,
2687         merge_state_array, transit_state,
2688         check_subexp_matching_top, transit_state_sb,
2689         transit_state_mb, transit_state_bkref,
2690         get_subexp, get_subexp_sub, find_subexp_node,
2691         check_arrival, check_arrival_add_next_nodes,
2692         find_collation_sequence_value, check_arrival_expand_ecl,
2693         check_arrival_expand_ecl_sub, expand_bkref_cache,
2694         build_trtable, check_node_accept_bytes, extend_buffers,
2695         group_nodes_into_DFAstates, check_node_accept): Likewise.
2696
2697         * posix/regex_internal.c (re_string_construct_common,
2698         re_string_skip_chars, create_newstate_common,
2699         register_state, create_ci_newstate, create_cd_newstate,
2700         calc_state_hash): Likewise.
2701         (re_string_peek_byte_case, re_fetch_byte_case): Change
2702         declaration from ANSI to K&R.
2703
2704 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
2705
2706         * posix/regexec.c (build_trtable): Don't allocate the trtable
2707         until state->word_trtable is known.  Don't hardcode UINT_BITS
2708         iterations on each bitset item.
2709
2710 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
2711
2712         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
2713         Initialize REF before passing it to _dl_lookup_symbol.
2714
2715 2003-12-21  Roland McGrath  <roland@frob.com>
2716
2717         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
2718
2719 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
2720
2721         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
2722         2003-11-24 changes.
2723         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
2724         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
2725         * posix/bug-regex19.c (tests): Add new tests.
2726
2727         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
2728
2729         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
2730         after checking syntax.  Optimize.
2731         (calc_first): Fix comment.
2732         * posix/bug-regex13.c (tests): Add new tests.
2733
2734 2003-12-21  Roland McGrath  <roland@redhat.com>
2735
2736         * manual/arith.texi (Parsing of Integers): Typo fix.
2737
2738 2003-12-20  Roland McGrath  <roland@frob.com>
2739
2740         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
2741         add missing dereference of IFREQS before counting loop.
2742
2743 2003-12-21  Andreas Schwab  <schwab@suse.de>
2744
2745         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
2746         constraints.
2747
2748 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
2749
2750         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
2751
2752 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
2753
2754         * stdio-common/printf_fp.c: Add support to use alternative decimal
2755         digits.
2756         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
2757         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
2758
2759 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2760
2761         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
2762         reload PIC if we need to call __syscall_error, cleanup asm.
2763
2764 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
2765
2766         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
2767         FE_ALL_EXCEPT before complimenting.
2768         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
2769         and gcc '+r' constraint.
2770         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
2771         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
2772         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
2773         exception bits, OR with envp, pass to fesetenv.
2774         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
2775         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
2776         triggered by M_PI/69.69 converted to single precision.
2777         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
2778         bits not raised exception bits.
2779
2780         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
2781         correct build strings.
2782         * sysdeps/hppa/dl-fptr.h: New file.
2783         * sysdeps/hppa/dl-fptr.c: Removed.
2784         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
2785         remove const qualifier for map.
2786         (_dl_function_address): Removed.
2787         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
2788         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
2789         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
2790         DL_DT_FINI_ADDRESS use the previous two macros.
2791
2792 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
2793
2794         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
2795         (tr_memalignhook): New function.
2796         (mtrace): Register tr_memalignhook.
2797         (muntrace): Deregister tr_memalignhook.
2798         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
2799         call it directly instead of memalign_internal.
2800
2801 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
2802
2803         * misc/mntent_r.c: Change encoding to match recently changed decoder.
2804         Patch by Alexander Achenbach <xela@slit.de>.
2805
2806 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
2807
2808         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
2809         vrregset_t.
2810
2811 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
2812
2813         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
2814         conditional to include typedef elf_vrreg_t.
2815
2816 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
2817
2818         * posix/regexec.c (re_search_internal): Limit search to the
2819         beginning of the buffer if the initial states are empty for
2820         contexts that do not include CONTEXT_BEGBUF or, if
2821         !preg->newline_anchor, that do not include any one of
2822         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
2823
2824 2003-12-17  Andreas Jaeger  <aj@suse.de>
2825
2826         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
2827         Kevin Pedretti <pedretti@ieee.org>.
2828
2829 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
2830
2831         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
2832         removes the visibility attributes which might be defined earlier
2833         for some gcc versions.  Instead spell out what strong_alias does
2834         plus the visibility.
2835
2836 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
2837
2838         * posix/regex_internal.h: Make sure the regex code compile
2839         with non-GCC compilers by hiding attributes.
2840
2841 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
2842             Paolo Bonzini  <bonzini@gnu.org>
2843
2844         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
2845         dests_ch items that are empty.
2846
2847 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
2848
2849         * posix/regexec.c (check_arrival): Remove duplicate test.
2850
2851 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
2852
2853         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
2854         * posix/regex_internal.c: Likewise.
2855         * posix/regexec.c: Likewise.
2856         Patch by Paolo Bonzini.
2857
2858 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
2859
2860         * posix/regex_internal.c (re_acquire_state_context):
2861         Compare the node sets after all the other comparisons.
2862
2863 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
2864
2865         * posix/regexec.c (find_subexp_node, check_arrival,
2866         check_arrival_add_next_nodes, check_arrival_expand_ecl,
2867         check_arrival_expand_ecl_sub, expand_bkref_cache):
2868         Rename the FL_OPEN parameter to TYPE, which is either
2869         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
2870
2871 2003-12-12  Andreas Jaeger  <aj@suse.de>
2872
2873         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
2874         to syscall.
2875
2876 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
2877
2878         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
2879         There might always be processes which have no vDSO.
2880         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
2881         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2882
2883 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2884
2885         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
2886         in the right order.
2887
2888 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
2889
2890         * rt/tst-clock.c (do_test): Print message when skipping
2891         CLOCK_PROCESS_CPUTIME_ID test.
2892
2893         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
2894         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
2895
2896 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
2897
2898         * sysdeps/ia64/elf/initfini.c: Add unwind info.
2899
2900         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
2901         attribute "unused".
2902         (elf_machine_dynamic): Mark with attributes "unused" and "const".
2903         (elf_machine_runtime_setup): Likewise.
2904
2905         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
2906         attribute "always_inline".
2907         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
2908         Likewise.
2909
2910         * configure.in: Check whether compiler has libunwind support.
2911         * config.make.in (have-cc-with-libunwind): New variable.
2912         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
2913         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
2914         mention -lunwind.
2915
2916 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
2917
2918         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
2919         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
2920         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
2921         DO_INLINE_SYSCALL.
2922
2923         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
2924         instead of DO_CALL().
2925
2926         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
2927         of DO_CALL().
2928
2929         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
2930         to take advantage of DO_CALL() macro.
2931         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
2932         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
2933
2934         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
2935         program header.  On ia64, the check failed previously because
2936         there are two program headers.
2937
2938 2003-12-10  Andreas Jaeger  <aj@suse.de>
2939             Ruediger Oertel  <ro@suse.de>
2940
2941         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2942
2943 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
2944
2945         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
2946         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
2947         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
2948         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
2949         * sysdeps/generic/s_nexttowardf.c: Likewise.
2950         * math/Makefile (tests): Add bug-nexttoward.
2951         * math/bug-nexttoward.c: New file.
2952
2953         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
2954         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2955         * math/bug-nextafter.c (main): Add tests for overflow and negative
2956         values.
2957
2958 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
2959
2960         * math/Makefile (tests): Add bug-nextafter.
2961         * math/bug-nextafter.c: New file.
2962         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
2963         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2964         * math/libm-test.inc (nextafter_test): Add test for overflow after
2965         +/-FLT_MAX etc.
2966
2967 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
2968
2969         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
2970         of fenv.
2971         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2972
2973 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2974
2975         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
2976         statements.
2977         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
2978         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
2979         (END): Add cfi_endproc directive.
2980         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
2981         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
2982         cfi_startproc and cfi_endproc directive.
2983         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2984         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
2985         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
2986         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
2987         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2988         Likewise.
2989         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2990         Likewise.
2991         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
2992         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
2993         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
2994         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
2995         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
2996         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
2997         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
2998         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2999         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
3000         Likewise.
3001         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
3002         Likewise.
3003         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
3004         directives. Move thread_start out of ENTRY/PSEUDO_END block to
3005         make backchain terminate.
3006         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
3007
3008         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
3009         (unwind_backtrace, unwind_getip): New variables.
3010         (init, __backchain_backtrace, backtrace_helper): New functions.
3011         (__backtrace): Use unwind info for backtrace instead of backchain
3012         walking if the unwind functions can be found.
3013         * sysdeps/s390/s390-64/backtrace.c: Likewise.
3014
3015         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
3016
3017         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
3018         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
3019         (elf_prstatus32, elf_prpsinfo32): New structures.
3020         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
3021
3022         * scripts/data/c++-types-s390-linux-gnu.data: New file.
3023         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
3024
3025 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
3026
3027         * stdlib/strfmon.c: Correct formatting of international currency
3028         values.  The international currency formatting should prefer the
3029         int_* values if they are set for a locale, and use the domestic
3030         values if the int_* values are unset.
3031
3032 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
3033
3034         * posix/Makefile (distribute): Add BOOST.tests.
3035         (tests): Add tst-boost, depend on tst-boost-mem.
3036         (generated): Add tst-boost-mem and tst-boost.mtrace.
3037         (tst-boost-ARGS, tst-boost-ENV): Set.
3038         ($(objpfx)tst-boost-mem): New.
3039         * posix/tst-boost.c: New test.
3040         * posix/BOOST.tests: New file.
3041
3042         * posix/Makefile (distribute): Add PCRE.tests.
3043         (tests): Add tst-pcre, depend on tst-pcre-mem.
3044         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
3045         (tst-pcre-ARGS, tst-pcre-ENV): Set.
3046         ($(objpfx)tst-pcre-mem): New.
3047         * posix/tst-pcre.c: New test.
3048         * posix/PCRE.tests: New file.
3049
3050 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
3051
3052         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
3053
3054         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
3055         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
3056
3057 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
3058
3059         * locale/programs/locarchive.c (enlarge_archive): Print size info
3060         only in verbose mode.
3061
3062         * locale/iso-3166.def: Three letter code of Romania changed.
3063
3064 2003-12-02  Roland McGrath  <roland@redhat.com>
3065
3066         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
3067         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
3068
3069 2003-11-30  Andreas Jaeger  <aj@suse.de>
3070
3071         * config.make.in (fno-unit-at-a-time): Define.
3072
3073         * configure.in: Add test for -fno-unit-at-a-time.
3074         Fix text for -fpie.
3075
3076         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
3077         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
3078
3079 2003-12-01  Automatic
3080
3081         * version.h (VERSION): Bump to 2.3.3.
3082
3083 2003-11-30  Andreas Jaeger  <aj@suse.de>
3084
3085         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
3086         decrease stack usage.
3087
3088 2003-11-30  Andreas Schwab  <schwab@suse.de>
3089
3090         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
3091         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3092
3093 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
3094
3095         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
3096         recognize \134 as well.
3097
3098 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
3099
3100         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
3101
3102 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
3103
3104         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
3105         <asm/fpu.h>.
3106         (struct ia64_fpreg): New definition.
3107
3108         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
3109         <asm/elf.h>.
3110         (ELF_NGREG): New #define.
3111         (ELF_NFPREG): Likewise.
3112         (elf_greg_t): New type.
3113         (elf_gregset_t): Likewise.
3114         (elf_fpreg_t): Likewise.
3115         (elf_fpregset_t): Likewise.
3116
3117 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
3118
3119         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
3120         <sys/ucontext.h>.
3121         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
3122         (pt_all_user_regs): New type.
3123
3124 2003-10-10  Simon Josefsson  <jas@extundo.com>
3125
3126         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
3127         strchrnul.h, strndup.h (from gnulib).
3128         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
3129         Autoconf manual.
3130         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
3131         Autoconf manual version.
3132         * argp/argp.h: Map __restrict to restrict or empty string when
3133         necessary, copied verbatim from posix/regex.h.
3134
3135 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
3136
3137         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
3138         addition to c++-types-$(base-machine)-$(config-os).data.
3139         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
3140         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
3141
3142 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
3143
3144         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
3145         of newline.
3146         * manual/sysinfo.texi (mtab): Adjust description accordingly.
3147         Reported by Andries.Brouwer@cwi.nl.
3148
3149         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
3150         to compensate other setup.
3151
3152 2003-11-27  Andreas Jaeger  <aj@suse.de>
3153
3154         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
3155
3156         * math/libm-test.inc (atan2_test): Add test that run infinitly.
3157         Reported by "Willus" <etc231etc231@willus.com>.
3158
3159 2003-11-27  Michael Matz  <matz@suse.de>
3160
3161         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
3162         with wrong types.
3163
3164 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
3165
3166         * posix/regexec.c (acquire_init_state_context): Make inline.
3167         Add always_inline attribute.
3168         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
3169         into if (dfa->nbackref).
3170         (sift_states_backward): Fix comment.
3171         (transit_state): Add BE macro.  Move if (next_state->has_backref)
3172         into if (dfa->nbackref && next_state).  Don't check for next_state
3173         != NULL twice.
3174         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
3175         for ANCHOR.
3176         (parse_expression): Only call init_word_char if word context will be
3177         needed.
3178
3179         * posix/bug-regex11.c (tests): Add new tests.
3180
3181         * posix/tst-regex.c: Include getopt.h.
3182         (timing): New variable.
3183         (main): Set timing to 1 if --timing argument is present.
3184         Add 2 new tests.
3185         (run_test, run_test_backwards): Handle timing.
3186
3187 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
3188
3189         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
3190         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
3191         offsets_needed fields.  Change icase, is_utf8 and map_notascii
3192         type from int bitfield to unsigned char.
3193         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
3194         (build_wcs_upper_buffer): Change prototype to return int.
3195         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
3196         defines, add prototypes.
3197         * posix/regex_internal.c (re_string_allocate): Don't initialize
3198         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
3199         Use mbs_allocated instead of MBS_* macros.
3200         (re_string_construct): Don't initialize stop and valid_len here.
3201         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
3202         macros.  Reallocate buffers if build_wcs_upper_buffer converted
3203         too few bytes.  Set valid_len to bufs_len only for single byte
3204         no translation and set in that case valid_raw_len as well.
3205         (re_string_realloc_buffers): Reallocate offsets if not NULL.
3206         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
3207         mbs_case.
3208         (re_string_construct_common): Initialize raw_len, mbs_allocated,
3209         stop and raw_stop.
3210         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
3211         after it.  Set valid_raw_len.  Don't set mbs_case.
3212         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
3213         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
3214         before mbrtowc instead of after it.  If upper case character
3215         uses different number of bytes than lower case, goto to the
3216         slow path.  Don't call towupper unnecessarily twice.  Set
3217         valid_raw_len as well.  Handle in the slow path the case if
3218         lower and upper case use different number of characters.
3219         Don't set mbs_case.
3220         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
3221         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
3222         valid_raw_len.
3223         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
3224         valid_raw_len.
3225         (re_string_reconstruct): Use raw_len/raw_stop to initialize
3226         len/stop.  Clear valid_raw_len and offsets_needed when clearing
3227         valid_len.  Use mbs_allocated instead of MBS_* macros.
3228         Check original offset against valid_raw_len instead of valid_len.
3229         Remove mbs_case handling.  Adjust valid_raw_len together with
3230         valid_len.  If is_utf8 and looking for tip context, apply
3231         pstr->trans first.  If buffers start with partial multi-byte
3232         character, initialize mbs array as well if mbs_allocated.
3233         Check return value of build_wcs_upper_buffer.
3234         (re_string_peek_byte_case): New function.
3235         (re_string_fetch_byte_case): New function.
3236         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
3237         Don't free mbs_case.  Free offsets.
3238         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
3239         if mb_cur_max == 6.
3240         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
3241         as well.  Use valid_raw_len instead of valid_len when looking
3242         through fastmap.  Adjust registers through input.offsets.
3243         (extend_buffers): Allow build_wcs_upper_buffer to fail.
3244         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
3245         tests.
3246
3247 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
3248
3249         * posix/regexec.c (check_subexp_limits): Only check close
3250         subexpression limitation if one is found.  Formatting.
3251         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
3252         Formatting.
3253         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
3254         Add new test.
3255
3256 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
3257
3258         * sysdeps/unix/sysv/linux/kernel-features.h
3259         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
3260         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
3261         if __ASSUME_PROT_GROWSUPDOWN is defined.
3262
3263 2003-11-26  Andreas Jaeger  <aj@suse.de>
3264
3265         * sysdeps/unix/sysv/linux/dl-execstack.c
3266         (_dl_make_stack_executable): Set dl_stack_flags always for
3267         success.
3268
3269 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
3270
3271         * locale/program/ld-monetary.c: Only check the first three
3272         characters in int_curr_symbol against ISO-4217, to make the
3273         separator character used by a locale independent of the content
3274         in iso-4217.def.
3275         * locale/iso-4217.def: Remove the space character from all
3276         currency values to get the new test code in ld-monetary.c working.
3277
3278 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
3279
3280         * elf/soinit.c (_fini): Put _fini() in .init_array section if
3281         HAVE_INITFINI_ARRAY is defined.
3282
3283 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
3284
3285         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
3286         Define it appropriately after last change.  Use it where __sqrtl
3287         was used.
3288
3289 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
3290
3291         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
3292         sqrt for gcc 3.3 and above.
3293
3294 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
3295
3296         * posix/runptests.c (main): Make errors fatal.
3297         * posix/PTESTS: One test in GA135 and GA136 check functionality
3298         which seems not guaranteed.
3299
3300 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
3301
3302         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
3303         returned REG_NOMATCH, set match_last to -1.  Don't initialize
3304         pmatch[0] needlessly.  Fix comment.
3305         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
3306         (set_regs): Fix comment.
3307         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
3308         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
3309         (build_charclass_op): Set has_plural_match if adding both
3310         SIMPLE_BRACKET and COMPLEX_BRACKET.
3311         * posix/bug-regex11.c (tests): Fix register values for one commented
3312         out test.  Add new tests.
3313
3314         * posix/regex_internal.c (re_string_allocate): Make sure init_len
3315         is at least dfa->mb_cur_max.
3316         (re_string_reconstruct): If is_utf8, don't fall back into
3317         re_string_skip_chars just because idx points into a middle of
3318         valid UTF-8 character.  Instead, set the wcs bytes which correspond
3319         to the partial character bytes to WEOF.
3320         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
3321         instead of dfa->nodes_len + 1 state_log entries initially.
3322         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
3323         tests.
3324
3325 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
3326
3327         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
3328         comment.
3329         (re_dfa_t): Add sb_char field.
3330         (bitset_mask): New function.
3331         * posix/regcomp.c (free_dfa_content): Free sb_char.
3332         (init_dfa): Don't initialize word_char unnecessarily.
3333         Initialize sb_char.
3334         (duplicate_node): Don't duplicate !word_char CHARACTERs with
3335         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
3336         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
3337         (duplicate_node_closure): Handle clone_dest == -1 from
3338         duplicate_node.
3339         (peek_token): Initialize word_char bit.
3340         (parse_expression, parse_dup_op): Add comments.
3341         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
3342         starting bytes here at the beginning.  Mask off the bits right
3343         before creating SIMPLE_BRACKET.
3344         (build_charclass_op): Likewise.
3345         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
3346         set accept bits for single-byte characters.
3347         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
3348         being single byte encoded and the rest multi-byte.
3349         * posix/bug-regex19.c (tests): Add new tests.
3350         (do_mb_tests): Initialize t to *test.
3351         (main): Fail even on do_mb_tests errors.
3352
3353 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
3354
3355         * posix/regexec.c: Correct several memory allocation problems.
3356         Add more BE.
3357         * posix/regex_internal.c: Likewise.
3358         * posix/regcomp.c: Likewise.
3359
3360         * posix/regexec.c: Add const in a number of places.
3361         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
3362         debugging.  Its value isn't important.
3363
3364 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
3365
3366         * posix/PTESTS: Fix first test of GA143.
3367
3368 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
3369
3370         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
3371         isn't likely.
3372
3373         * locale/programs/charmap.c (charmap_read): If encoding is found
3374         not ASCII compatible, set enc_not_ascii_compatible.
3375         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
3376         * locale/programs/ld-ctype.c (ctype_startup): If
3377         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
3378
3379 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
3380
3381         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
3382         if !__libc_enable_secure.
3383
3384         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
3385         field.
3386         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
3387         (dl_main): Set GL(dl_use_load_bias) default.
3388         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
3389         Add EXTRA_LD_ENVVARS_13.
3390         * elf/dl-support.c (_dl_use_load_bias): New variable.
3391         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
3392         with GL(dl_use_load_bias).
3393         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
3394         LD_USE_LOAD_BIAS.
3395         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
3396         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
3397         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
3398         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
3399         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
3400
3401 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
3402
3403         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
3404
3405         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
3406         pointer.  Adjust callers.
3407
3408         * posix/regcomp.c (fetch_token): Change interface to match
3409         peek_token.  This avoids some copying and reduces code size.
3410
3411 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
3412
3413         * posix/bug-regex19.c (tests): Add more tests.
3414
3415         * posix/bug-regex11.c: And one more commented out test.
3416
3417         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
3418         tests multiple times unnecessarily.
3419
3420         * posix/bug-regex19.c (BRE, ERE): Define.
3421         (tests): Add many new tests, remove UTF-8 ones.
3422         (do_one_test, do_mb_tests): New functions.
3423         (main): Rewritten using do_one_test and do_mb_tests.
3424
3425 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
3426
3427         * posix/PTESTS: Fix first test in GA143.
3428
3429 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
3430
3431         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
3432         Add word_trtable.
3433         * posix/regex_internal.c (create_newstate_common, free_state):
3434         Don't free trtable_search.
3435         * posix/regexec.c (check_matching): Remove fl_search argument.
3436         (transit_state_sb): Likewise.  #ifdef out as unused.
3437         (build_trtable): Remove fl_search argument.  Set state->word_trtable
3438         and state->trtable.  Build separate word and non-word tables if
3439         multi-byte and they differ for some character.
3440         (transit_state): Remove fl_search argument.  Don't update
3441         state->trtable here.  Handle state->word_trtable.
3442         #ifdef out unused call to transit_state_sb.
3443         (re_search_internal): Update check_matching caller.
3444         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
3445         bitmask for multi-byte locales.
3446         * posix/bug-regex19.c (tests): Enable some commented out tests, add
3447         2 new tests.
3448         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
3449         multi-byte.  Don't run identical multi-byte tests multiple times
3450         unnecessarily.
3451         (main): Check setlocale return value.
3452         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
3453         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
3454         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
3455         here, without --utf8 argument but with MALLOC_TRACE.
3456
3457 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
3458
3459         * posix/regexec.c (extend_buffers): Don't allocate
3460         twice as big state_log as needed.  Don't modify pstr->valid_len
3461         for mb_cur_max == 1 !icase !trans.
3462
3463         * posix/regcomp.c (free_bin_tree): Removed.
3464         (create_tree): Add dfa argument.  Don't call re_malloc for
3465         each tree, instead allocate from str_tree_storage.
3466         (re_dfa_add_tree_node): New function.
3467         (free_dfa_content): Handle freeing if dfa->nodes == NULL
3468         or dfa->state_table == NULL.
3469         (re_compile_internal): Call free_dfa_content if init_dfa
3470         fails.  Call free_workarea_compile, re_string_destruct
3471         and free_dfa_content for most of the other failure paths.
3472         (init_dfa): Initialize str_tree_storage_idx.
3473         Don't clear any fields on allocation failure.
3474         (free_workarea_compile): Free str_tree_storage chunks
3475         instead of free_bin_tree (dfa->str_tree).
3476         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
3477         followed by create_tree.  Add dfa argument to remaining
3478         create_tree calls.  Remove new_idx variable.  Remove calls
3479         to free_bin_tree.
3480         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
3481         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
3482         (duplicate_tree): Remove calls to free_bin_tree, add dfa
3483         argument to create_tree.
3484         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
3485         (bin_tree_storage_t): New type.
3486         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
3487         fields.
3488         * posix/Makefile (tests): Add bug-regex21.
3489         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
3490         tst-rxspencer-mem and tst-rxspencer.mtrace.
3491         (tests): Depend on $(objpfx)bug-regex21-mem
3492         and $(objpfx)tst-rxspencer-mem.
3493         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
3494         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
3495         * posix/tst-rxspencer.c (main): Add call to mtrace.
3496         Free line at the end.
3497         * posix/bug-regex21.c: New test.
3498
3499 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
3500
3501         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
3502
3503         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
3504         fails, just use the byte, do no fancy conversions.
3505
3506         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
3507         not ->len.
3508         (re_string_is_single_byte_char): Likewise.
3509
3510 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
3511
3512         * posix/regexec.c (get_subexp): After calling get_subexp_sub
3513         reload buf and bkref_str.  Little optimization by avoiding memcmp.
3514
3515 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
3516
3517         * sysdeps/unix/sysv/linux/ia64/sysdep.h
3518         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
3519         that all existing GAS versions have a problem with .align inside
3520         a function.
3521         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
3522         * sysdeps/ia64/memcpy.S: Likewise.
3523         * sysdeps/ia64/memset.S: Likewise.
3524         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
3525         out of .text into .rodata, where it belongs.
3526
3527         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
3528         save/restore input-arguments, because they're necessarily
3529         preserved by the kernel to support syscall-restart.
3530
3531 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
3532
3533         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
3534         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
3535         and EPSILON_BIT.
3536         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
3537         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
3538         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
3539         Handle OP_UTF8_PERIOD.
3540         (re_string_reconstruct): Set valid_len for single byte char searching
3541         with no translation and case sensitivity.
3542         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
3543         OP_UTF8_PERIOD.
3544         (re_compile_internal): Don't call optimize_utf8 if preg->translate
3545         != NULL.
3546         (optimize_utf8): Remove BACK_SLASH case.
3547         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
3548         optimized.
3549         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
3550         any bits set and COMPLEX_BRACKET is used.
3551         * posix/regexec.c (transit_state_mb): Fix comment typo.
3552         (group_nodes_into_DFAstates, check_node_accept): Handle
3553         OP_UTF8_PERIOD.
3554         (check_node_accept_bytes): Likewise.  Reorder slightly so that
3555         re_string_char_size_at and re_string_elem_size_at are called
3556         only when needed.
3557         * posix/bug-regex20.c (BRE, ERE): Define.
3558         (tests): Use them to make lines shorter.  Expect . to be
3559         optimized.  Add lots of new tests.
3560         (main): Run (ATM just case sensitive) test with backwards searching
3561         as well.
3562
3563 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
3564
3565         * io/bug-ftw4.c: Include string.h.
3566         * posix/fnmatch.c (mbsinit): Remove define.
3567
3568 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
3569
3570         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
3571         well.
3572         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
3573         followed by dup operator is expected to be optimized.
3574
3575         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
3576         variables to the block where they are only used, initialize
3577         nrules only immediately before using it.
3578
3579 2003-11-15  Andreas Jaeger  <aj@suse.de>
3580
3581         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
3582         * sysdeps/x86_64/fpu/s_truncl.S: New file.
3583         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
3584         * sysdeps/x86_64/fpu/s_floorl.S: New file.
3585         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
3586         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
3587
3588         * math/libm-test.inc (floor_test): Test also ±0.25.
3589         (ceil_test): Test -0.25.
3590
3591 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
3592
3593         * sysdeps/posix/getaddrinfo.c: Add support for destination address
3594         selection according to RFC 3484.
3595
3596 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
3597
3598         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
3599         Replace last two parameters of re_string_allocate and
3600         re_string_construct with pointer to DFA.
3601         (re_dfa_t): Add map_notascii field.
3602         * posix/regcomp.c (re_compile_internal): Add call of
3603         re_string_construct.
3604         (init_dfa): Initialize map_notascii.
3605         * posix/regex_internal.c: Adjust definitions of re_string_allocate
3606         and re_string_construct.
3607         Pass DFA to re_string_construct.  Adjust definition.  Initialize
3608         map_notascii field.
3609         (build_wcs_upper_buffer): If map_notascii is zero use simplified
3610         method to map ASCII values to upper case.
3611         * posix/regex.c: Include localeinfo.h.
3612         * posix/regexec.c: Adjust call of re_string_allocate.
3613
3614         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
3615         * locale/localeinfo.h (LIMAGIC): Change value.
3616         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
3617         * locale/C-ctype.h: Likewise.
3618         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
3619         ASCII to non-ASCII value.  Write out that value.
3620
3621         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
3622         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
3623
3624 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
3625
3626         * posix/tst-rxspencer.c (check_match): @ without any following
3627         characters must match only end of string.
3628         (main): Fix filename in error message.
3629
3630 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
3631
3632         * sysdeps/ia64/dl-machine.h: Force inlining of
3633         elf_machine_runtime_setup().
3634
3635 2003-11-13  Andreas Jaeger  <aj@suse.de>
3636
3637         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
3638         (CFLAGS-test-double.c): Likewise.
3639         (CFLAGS-test-ldouble.c): Likewise.
3640         (CPPFLAGS-test-ifloat.c): Likewise.
3641         (CPPFLAGS-test-idouble.c): Likewise.
3642         (CPPFLAGS-test-ildoubl.c): Likewise.
3643
3644         * math/libm-test.inc (ceil_test): Test ceil (0.25).
3645
3646 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
3647
3648         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
3649         sends the netlink data.
3650         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
3651
3652 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
3653
3654         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
3655         with no bits set for >= 0x80 chars is seen.
3656         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
3657         optimized.
3658         (main): Run all tests with RE_ICASE as well.
3659
3660 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
3661
3662         * posix/Makefile: Add rules to build and run tst-rxspencer.
3663         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
3664         * posix/tst-rxspencer.c: New file.
3665         * posix/rxspencer/tests: New file.
3666         * posix/rxspencer/COPYRIGHT: New file.
3667         Patch mostly by Jakub Jelinek.
3668
3669         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
3670         this is no option given the first token.
3671
3672         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
3673         hyphen in range expression.  Return EBRACK in this case.
3674
3675         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
3676         we expect them or it's the last element in the bracket expression.
3677         Indicated by new parameter.  Adjust all callers.
3678
3679         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
3680         Prettier error messages.
3681
3682         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
3683         number in {,} expression is larger.
3684
3685 2003-11-13  Andreas Jaeger  <aj@suse.de>
3686
3687         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
3688         Define appropriately for x86_64.
3689         (__ASSUME_UTIMES): Likewise.
3690         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
3691
3692         * sysdeps/x86_64/fpu/s_ceill.S: New file.
3693
3694 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
3695
3696         * posix/regcomp.c (parse_expression): In BRE consecutive
3697         duplications are not allowed.
3698
3699 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
3700
3701         * posix/regcomp.c (parse_bracket_exp): If end of expression is
3702         seen, return EBRACK error, not BADPAT.
3703
3704         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
3705         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
3706         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
3707         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
3708
3709         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
3710         return REG_EPAREN.
3711
3712         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
3713         * posix/runptests.c (main): Handle comments.
3714         * posix/PTESTS2C.sed: Handle comments.
3715
3716 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3717
3718         * posix/regcomp.c (optimize_utf8): New function.
3719         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
3720         of !icase.
3721         (re_compile_internal): Call optimize_utf8 if not case insensitive
3722         and in UTF-8 locale.
3723         * posix/regex_internal.h: Ifdef out some prototypes if
3724         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
3725         * posix/Makefile (tests): Add bug-regex20.
3726         (bug-regex20-ENV): Add LOCPATH.
3727         * posix/bug-regex20.c: New test.
3728
3729 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3730
3731         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
3732
3733 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3734
3735         * posix/tst-regex.c (umemlen): New variable.
3736         (test_expr): Add expectedicase argument.  Test case insensitive
3737         searches as well as backwards searches (case sensitive and
3738         insensitive) too.
3739         (run_test): Add icase argument.  Use it to compute regcomp flags.
3740         (run_test_backwards): New function.
3741         (main): Cast read to size_t to avoid warning.  Set umemlen.
3742         Add expectedicase arguments to test_expr.
3743         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
3744         find previous character by walking back instead of converting
3745         all chars from beginning.
3746
3747 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3748
3749         * posix/regex_internal.h (struct re_string_t): Add is_utf8
3750         and mb_cur_max fields.
3751         (struct re_dfa_t): Likewise.  Reorder fields to make structure
3752         smaller on 64-bit arches.
3753         (re_string_allocate, re_string_construct): Add mb_cur_max and
3754         is_utf8 arguments.
3755         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
3756         instead of MB_CUR_MAX.
3757         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
3758         instead of MB_CUR_MAX.
3759         (re_compile_internal): Pass new arguments to re_string_construct.
3760         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
3761         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
3762         of MB_CUR_MAX.
3763         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
3764         dfa->mb_cur_max instead of MB_CUR_MAX.
3765         * posix/regex_internal.c (re_string_construct_common): Add
3766         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
3767         (re_string_allocate, re_string_construct): Add mb_cur_max and
3768         is_utf8 arguments, pass them to re_string_construct_common.
3769         Use mb_cur_max instead of MB_CUR_MAX.
3770         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
3771         MB_CUR_MAX.
3772         (re_string_reconstruct): Likewise.
3773         (re_string_context_at): Use input->mb_cur_max instead of
3774         MB_CUR_MAX.
3775         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
3776         instead of MB_CUR_MAX.
3777         * posix/regexec.c (re_search_internal): Likewise.
3778         Pass new arguments to re_string_allocate.
3779         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
3780         MB_CUR_MAX.
3781         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
3782
3783 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3784
3785         * posix/Makefile (tests): Add bug-regex19.
3786         (bug-regex19-ENV): Add LOCPATH.
3787         * posix/bug-regex19.c: New test.
3788
3789 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
3790
3791         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
3792         with MB_CUR_MAX > 1 locales in the fastmap.
3793
3794 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
3795
3796         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
3797         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
3798         of toupper.
3799         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
3800         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
3801         * posix/bug-regex17.c: New file
3802         * posix/bug-regex18.c: New file.
3803
3804 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
3805
3806         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
3807         Define __NR_pread/__NR_pwrite if not done in kernel headers
3808
3809 2003-11-11  Roland McGrath  <roland@redhat.com>
3810
3811         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
3812
3813         * manual/Makefile (info): Don't depend on dir-add.info.
3814         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
3815         (dir-add.info): Target removed, replaced with ...
3816         (dir-add.texi): New target.
3817         (distribute): Add it.
3818         (install): Remove variant with --section arguments.
3819         Let the @dircategory directives do their work.
3820         (mostlyclean): Don't remove dir-add.info here.
3821         (realclean): Remove dir-add.texi here.
3822         * manual/libc.texinfo: @include dir-add.texi
3823         * configure.in: Remove check for old Debian install-info.
3824         * configure: Regenerated.
3825         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
3826
3827 2003-11-08  Andreas Schwab  <schwab@suse.de>
3828
3829         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
3830
3831 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3832
3833         * io/ftwtest-sh: Fix nested sed commands.
3834
3835 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
3836
3837         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
3838         valid_len wide chars.
3839
3840 2003-11-09  Roland McGrath  <roland@redhat.com>
3841
3842         * manual/examples/dir2.c (one): Add const to argument type.
3843         Reported by J de Haan <j.de.haan@home.nl>.
3844
3845 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
3846
3847         * po/pl.po: Update from translation team.
3848
3849 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
3850
3851         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3852         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
3853         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
3854         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
3855         and compat_symbol.
3856         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3857         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
3858         and nftw64@@GLIBC_2.3.3.
3859
3860         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
3861         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
3862         * io/ftw.c (ftw_dir): Add old_dir argument.
3863         Clear result if it was FTW_SKIP_SIBLINGS after processing all
3864         dir entries.  Change cwd back if old_dir != NULL.
3865         (process_entry): Adjust caller.  Don't change cwd back here.
3866         Change FTW_SKIP_SUBTREE result to 0.
3867         (ftw_startup): Adjust ftw_dir caller.
3868         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
3869         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
3870         (options, main): Add --skip-subtree and --skip-siblings options.
3871         (cb): Use return FTW_CONTINUE instead of return 0.
3872         Handle --skip-subtree and --skip-siblings.
3873         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
3874         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
3875
3876 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
3877
3878         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
3879         non-zero.
3880         * io/Makefile (tests): Add bug-ftw4.
3881         * io/bug-ftw4.c: New test.
3882
3883 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
3884
3885         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
3886         (struct _IO_FILE_complete_plus): New type.
3887         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
3888         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
3889         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
3890         Call _IO_old_init instead of _IO_init.
3891
3892 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
3893
3894         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
3895
3896         * locale/iso-639.def: Add Blin.
3897         Patch by Daniel Yacob <locales@geez.org>.
3898
3899 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
3900
3901         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
3902         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
3903
3904 2003-11-01  Randolph Chung  <tausq@debian.org>
3905
3906         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
3907         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
3908         Add missing parentheses.
3909
3910 2003-11-01  Roland McGrath  <roland@redhat.com>
3911
3912         * libio/bug-ftell.c (do_test): Add a cast.
3913
3914 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
3915
3916         * Makerules (shlib.lds): Make sure that ld doesn't try to link
3917         anything while generating the linker script.
3918
3919 2003-10-31  Roland McGrath  <roland@redhat.com>
3920
3921         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
3922         special members.
3923
3924 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
3925
3926         * po/be.po: Update from translation team.
3927
3928 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
3929
3930         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
3931         _dl_map_object.
3932
3933         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
3934         ELF header.
3935
3936         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
3937         rest of line.  We use getline which means this cannot happen.
3938
3939 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
3940
3941         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
3942         Avoid infinite loops in case the mounts file is hosed.
3943         * io/Makefile: Add rules to build and run tst-statvfs.
3944         * io/tst-statvfs.c: New file.
3945
3946         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
3947         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
3948         executables unless __RTLD_OPENEXEC flag is present.
3949         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
3950         _dl_map_object when loading the executable.
3951
3952         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
3953         correctly.
3954         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
3955
3956         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
3957         reverse lookup format for IPv6 addresses is using bitstring and
3958         .ip6.arpa suffix.
3959         * resolv/ns_name.c: Implement encoding and decoding bitstring in
3960         hex format.
3961
3962 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
3963
3964         * locale/programs/locale.c (show_info): Fix printing word values on
3965         64-bit big-endian architectures.
3966
3967 2003-10-19  Bruno Haible  <bruno@clisp.org>
3968
3969         * intl/hash-string.c (hash_string): Zero-extend each char from the
3970         string; the old code did a sign-extend on some platforms.
3971
3972 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
3973
3974         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
3975         append options to these.
3976         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
3977
3978 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
3979
3980         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
3981
3982 2003-10-15  Roland McGrath  <roland@redhat.com>
3983
3984         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
3985         Fake an entry for the main executable and then call __dl_iterate_phdr.
3986         * elf/Makefile (routines): Remove dl-iteratephdr-static.
3987         (elide-routines.os): Likewise.
3988         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
3989         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
3990         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
3991
3992 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
3993
3994         * elf/rtld.c (print_statistics): Print also number of relative
3995         relocations.
3996
3997 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
3998
3999         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
4000         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
4001         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
4002         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
4003         and undef JUMPTARGET before use.
4004         [PIC]: Save pic register around syscall.
4005         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
4006         Cleanup asm statment.
4007
4008 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4009
4010         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
4011         after trapa instruction.
4012
4013 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4014
4015         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
4016
4017 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
4018
4019         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
4020
4021 2003-10-09  Roland McGrath  <roland@redhat.com>
4022
4023         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
4024         is no file to name.
4025
4026 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
4027
4028         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
4029         two identical copies of strings.
4030
4031 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
4032
4033         * posix/bug-regex11.c: Add some more tests which fail so far.
4034         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
4035
4036 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
4037
4038         * posix/bug-regex11.c: Add more backreference-related test cases.
4039         (main): Show the failing regex in the error messages.
4040         * posix/regexec.c (check_dst_limits_calc_pos):
4041         Simplify some nested conditionals.  Replace if's with a switch
4042         statement.
4043         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
4044         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
4045         does not change in the recursive invocation, fixing an infinite loop
4046         in the ()\1*\1* regex.
4047         (sift_states_backward): Fix function comment.
4048         * posix/regcomp.c (calc_epsdest): Add an assertion.
4049
4050 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
4051
4052         * manual/examples/testopt.c: Fix warnings.  Better error message
4053         for missing -c argument.
4054         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
4055
4056         * timezone/asia: Update from tzdata2003d.
4057         * timezone/australasia: Likewise.
4058         * timezone/backward: Likewise.
4059         * timezone/europe: Likewise.
4060         * timezone/iso3166.tab: Likewise.
4061         * timezone/northamerica: Likewise.
4062         * timezone/southamerica: Likewise.
4063         * timezone/zone.tab: Likewise.
4064
4065 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
4066
4067         * sysdeps/ia64/backtrace.c: New file.
4068         * sysdeps/x86_64/backtrace.c: New file.
4069         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
4070         (_Unwind_Backtrace): New prototype.
4071
4072 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
4073
4074         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
4075         * sysdeps/i386/elf/setjmp.S: Likewise.
4076
4077 2003-10-02  Roland McGrath  <roland@redhat.com>
4078
4079         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
4080         * argp/argp-namefrob.h
4081         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
4082         (__argp_short_program_name): Don't declare fn, define it as a macro.
4083
4084 2003-08-22  Simon Josefsson  <jas@extundo.com>
4085
4086         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
4087
4088         * argp/argp-help.c: Don't include malloc.h, some platforms
4089         complain and it doesn't appear to be used.