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