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