.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2003-01-30  Roland McGrath  <roland@redhat.com>
2
3         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
4         null argument before all else.
5         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
6
7 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
8
9         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
10         Move to RESOLVE protected part of the header.
11         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
12         Likewise.
13
14 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
15
16         * stdio-common/Makefile (tests): Add bug15.
17         (bug15-ENV): Define.
18         * stdio-common/bug15.c: New file.
19
20 2002-10-07  Wolfram Gloger  <wg@malloc.de>
21
22         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
23         to foreign sbrk()'s if arena is contiguous.  Bug report from
24         Bruno Haible <bruno@clisp.org>.
25
26 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
27
28         * sysdeps/s390/libc-tls.c: Include stdlib.h.
29
30 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
31
32         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
33         ps.__count.
34
35 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
36
37         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
38         restoring of %r6.
39         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
40         64-bit load.
41         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
42
43 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
44
45         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
46         (allocate_static_tls): ...here.  Add __attribute_noinline__.
47         Don't return on failure.
48         (_dl_reloc_bad_type): Add __attribute_noinline__.
49         * elf/do-rel.h (elf_dynamic_do_rel): Add
50         __attribute__((always_inline)).
51         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
52         elf_machine_rel_relative, elf_machine_rela_relative,
53         elf_machine_lazy_rel): Add prototypes with
54         __attribute__((always_inline)).
55
56 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
57
58         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
59
60 2003-01-29  Roland McGrath  <roland@redhat.com>
61
62         * configure.in: Barf if configured in $srcdir.
63
64 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
65
66         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
67         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
68
69 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
70
71         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
72         clone parameters to match the order used on ia32.
73         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
74
75 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
76
77         * elf/elf.h: Add new s390 relocs.
78         * elf/tls-macros.h: Add s390 versions.
79         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
80         * sysdeps/s390/dl-tls.h: New file.
81         * sysdeps/s390/libc-tls.c: New file.
82         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
83         relocs for class PLT.
84         (elf_machine_rela): Handle TLS relocs.
85         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
86         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
87         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
88         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
89         CLONE_CHILD_*TID flags.
90         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
91         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
92         bit offset.
93         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
94         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
95         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
96         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
97         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
98         Likewise.
99         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
100         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
101         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
102         variants.
103         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
104         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
105         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
106         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
107         variants.
108
109 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
110
111         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
112         from __libc_pause.  Implement using sigsuspend.
113         (__libc_pause): Call do_pause to do the real work.
114
115         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
116         sig_or_mask parameter is is_sig != 0.
117
118 2003-01-21  Philip Blundell  <philb@gnu.org>
119
120         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
121
122 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
123
124         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
125
126 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
127
128         * stdio-common/bug14.c: Use official name for the locale.
129
130         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
131         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
132         instead of __libc_cleanup_region_end.
133
134         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
135         as first parameter to __libc_cleanup_region_start.
136
137         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
138         (__fe_nomask_env): Use __prctl not prctl.
139         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
140         prctl syscall.
141
142         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
143
144         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
145
146         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
147         wrap-around in test.
148
149 2003-01-26  Andreas Schwab  <schwab@suse.de>
150
151         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
152         compatibility symbols.  Remove INTDEF for __divdi3.
153         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
154         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
155         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
156         define.
157         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
158
159 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
160
161         * elf/tls-macros.h: Add SPARC 32-bit definitions.
162         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
163         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
164         for the first half of the header.  Include tls.h.
165         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
166         relocs too.
167         (elf_machine_rela): Handle TLS relocs.
168         * sysdeps/sparc/dl-tls.h: New file.
169
170         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
171         support.
172
173         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
174         * sysdeps/sparc/sparc32/memchr.S: Likewise.
175         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
176         * sysdeps/sparc/sparc32/strcat.S: Likewise.
177         * sysdeps/sparc/sparc32/strchr.S: Likewise.
178         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
179         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
180         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
181         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
182         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
183         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
184         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
185         * sysdeps/sparc/sparc64/strcat.S: Likewise.
186         * sysdeps/sparc/sparc64/strchr.S: Likewise.
187         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
188         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
189         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
190         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
191         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
192         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
193
194 2003-01-24  Andreas Schwab  <schwab@suse.de>
195
196         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
197         elements, and process them backwards.
198         * elf/Makefile ($(objpfx)tst-array4): New target.
199         ($(objpfx)tst-array4.out): Likewise.
200         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
201         * elf/tst-array4.c: New file.
202         * elf/tst-array4.exp: Likewise.
203
204 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
205
206         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
207
208 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
209
210         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
211         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
212         cancellation handling and handle both __NR_pread64 and __NR_pread.
213         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
214         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
215         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
216         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
217         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
218         case, use register names consistently.
219
220 2003-01-27  Wolfram Gloger  <wg@malloc.de>
221
222         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
223         pointer, not of the computed chunk.  Bug report from Carlos
224         O'Donell <carlos@baldric.uwo.ca>.
225
226 2003-01-25  Andreas Schwab  <schwab@suse.de>
227
228         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
229         addressing to save GOT entries.
230
231 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
232
233         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
234         inline_syscall1, inline_syscall2, inline_syscall3,
235         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
236         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
237         __attribute__((unused)) to ChEcK.
238
239 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
240
241         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
242         Fix inline assembler constraints.
243         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
244         Likewise.
245
246         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
247         -fPIC.
248
249 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
250
251         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
252         compute the cosine, not the sine, even if x > 0.8.
253
254 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
255
256         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
257         _nss_nis_setspent.  Work around the different prototypes.
258         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
259         internal_nis_endrpcent.
260         (internal_nis_endrpcent): Change return type to void.  Change callers.
261         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
262         _nss_nis_setpwent.  Work around the different prototypes.
263         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
264         of the function to...
265         (internal_nis_endprotoent): ... here.  New function.
266         (internal_nis_setprotoent): Use internal_nis_endprotoent.
267         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
268         _nss_nis_setnetent.  Work around the different prototypes.
269         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
270         of the function to...
271         (internal_nis_endnetgrent): ... here.  New function.
272         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
273
274 2003-01-19  Jim Meyering  <jim@meyering.net>
275
276         * time/strftime.c: (widen): Merge nearly-identical definitions.
277         (nl_get_alt_digit) [! defined my_strftime]: Define.
278         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
279         _nl_get_alt_digit and _nl_get_walt_digit.
280
281 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
282
283         * time/strftime.c (my_strftime): Handle very large width
284         specifications for numeric values correctly.  Improve checks for
285         overflow.
286         * time/Makefile (tests): Add tst-strftime.
287         * time/tst-strftime.c: New file.
288
289 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
290
291         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
292         _nss_nis_sethostent.  Work around the different prototypes.
293         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
294         _nss_nis_setgrent.  Work around the different prototypes.
295         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
296         function.  Split out from _nss_nis_endetherent.
297         (internal_nis_setetherent): Use internal_nis_endetherent instead of
298         duplicating the code.
299         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
300         of _nss_nis_setaliasent.
301         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
302         internal_nis_endservent code, don't duplicate it.
303
304         * inet/rexec.c (rexec_af): Protect socket operations with
305         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
306         * inet/rcmd.c (rcmd_af): Likewise.
307
308 2003-01-17  Roland McGrath  <roland@redhat.com>
309
310         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
311         Add test of value 0.80190127184058835.
312
313         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
314
315 2003-01-17  Richard Henderson  <rth@redhat.com>
316
317         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
318         relocs for class PLT.
319         * sysdeps/alpha/libc-tls.c: New file.
320         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
321         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
322
323 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
324
325         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
326         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
327         on _dl_static_lock.
328
329 2003-01-17  Andreas Jaeger  <aj@suse.de>
330
331         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
332
333 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
334
335         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
336         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
337         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
338         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
339         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
340         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
341         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
342         is 2.4.21.
343
344 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
345
346         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
347         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
348         buffers.
349
350         * sysdeps/generic/sysconf.c: Unconditionally implement
351         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
352         * sysdeps/posix/sysconf.c: Likewise.
353
354 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
355
356         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
357         set *err to the returned error, not to REG_ESPACE unconditionally.
358         (build_word_op): Likewise.
359         * posix/Makefile (tests): Add bug-regex16.
360         * posix/bug-regex16.c: New test.
361
362 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
363
364         * elf/dl-load.c (_dl_map_object_from_fd): Use
365         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
366         been already initialized.
367
368 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
369
370         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
371
372 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
373
374         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
375         allocated too.  Reported by Al Viro <aviro@redhat.com>.
376
377 2003-01-16  Roland McGrath  <roland@redhat.com>
378
379         Tweak merged .abilist file format to merge duplicate symbols in
380         different sets into multi-version stanzas with new "| SET regexp..."
381         header continuation lines.
382         * scripts/merge-abilist.awk: Rewritten for new format.
383         * scripts/extract-abilist.awk: Likewise.
384
385 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
386
387         * nscd/connections.c (nscd_run): Remove bogus return which isn't
388         necessary with gcc 3.2+.
389         (nscd_init): Don't use error() to print message, use dbg_log.
390
391         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
392         expected size into state.
393         (UNPACK_BYTES): Do the reverse.
394         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
395         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
396         Reported by Al Viro <aviro@redhat.com>.
397
398         * stdio-common/Makefile (tests): Add bug14.
399         * stdio-common/bug14.c: New file.
400
401         * stdio-common/vfscanf.c: When recognizing multibyte characters in
402         string reset the byte counter after mbrtowc reported it is not a
403         partial character.  Reported by Al Viro <aviro@redhat.com>.
404
405 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
406
407         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
408         sysdep-cancel.h, not sysdep.h.
409
410 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
411
412         * nscd/connections.c (nscd_run): Protect accept call with
413         TEMP_FAILURE_RETRY.
414
415 2003-01-15  Andreas Schwab  <schwab@suse.de>
416
417         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
418         (common-generated): Add s-proto-bp.d.
419         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
420         of bp thunks.
421         * sysdeps/unix/s-proto-bp.S: New file.
422         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
423         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
424         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
425
426 2003-01-15  Roland McGrath  <roland@redhat.com>
427
428         * Makerules: Use -include for tls.make, suppresses warning.
429         Move gen-as-const-headers rules up so before-compile is set in time.
430         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
431
432 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
433
434         * nscd/nscd.c (main): Make code to close all file descriptors
435         faster and more robust.
436
437         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
438         request with one writev call.  Protect all read calls with
439         TEMP_FAILURE_RETRY.
440         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
441         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
442
443         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
444         Protect writev calls with TEMP_FAILURE_RETRY.
445         * nscd/grpcache.c: Likewise.
446         * nscd/pwdcache.c: Likewise.
447
448         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
449         IPv6 address in debug output.
450
451 2003-01-14  Roland McGrath  <roland@redhat.com>
452
453         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
454         $(objpfx) directories, and get rid of vpath directives.  The previous
455         arrangement resulted in files being written to the source directories
456         when run in a clean build.  Find all .abilist files in $(..)abilist/.
457         (update-abi-%): Likewise.
458         (generated): Don't add .symlist files, they'll be intermediates.
459
460         * sysdeps/generic/init-first.c: Add a comment.
461
462         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
463
464         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
465         #includes and expressions.
466
467         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
468         config list when it already contains cpu-.*-os.* without / part.
469
470         * Makerules (sed-remove-dotdot): New variable.
471         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
472         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
473         (check-abi-config): New variable, append /tls or /notls to the tuple.
474         (check-abi-%): Use that for -v config value.
475         Find .abilist files in abilist/libfoo.abilist, not in subdir.
476         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
477
478 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
479
480         * manual/install.texi: Correct description of header preparation for
481         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
482
483 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
484
485         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
486         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
487         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
488
489 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
490
491         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
492         (INTERNAL_SYSCALL): Make use of ERR parameter.
493         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
494         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
495         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
496         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
497
498 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
499
500         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
501         == IPPROTO_TCP.
502         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
503
504         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
505         Fix entry for bit 31.
506
507         * iconvdata/Makefile: Add rules to build IBM866NAV.
508         * iconvdata/ibm866nav.c: New file.
509         * iconvdata/tst-tables.sh: Add IBM866NAV.
510         * iconvdata/gconv-modules: Add entries for IBM866NAV.
511
512 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
513
514         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
515         to test void* parameters.
516
517         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
518         source pointer before dereferencing.
519         (__STRING_SMALLL_GET32): Likewise.
520         (__memset_gc): Add missing parenthesis around macro arguments.
521         Patch by Denis Zaitsev <zzz@cd-club.ru>.
522
523         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
524         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
525
526 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
527
528         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
529         defining.
530
531 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
532
533         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
534         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
535         here.
536         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
537
538 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
539
540         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
541         from here...
542         (PSEUDO): ... to here.
543         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
544         from here...
545         (PSEUDO): ... to here.
546
547 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
548
549         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
550         dirent64 instead of struct dirent for dirent.  Call readdir64
551         instead of readdir.
552
553         * locale/programs/locfile.c (siblings_uncached): Use struct
554         dirent64 instead of struct dirent for other_dentry.  Call
555         readdir64 instead of readdir.
556
557         * elf/ldconfig.c (direntry): Change type to struct dirent64.
558         (search_dir): Use readdir64 instead of readdir.
559         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
560
561 2003-01-12  Roland McGrath  <roland@redhat.com>
562
563         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
564         not strtol.  The former is usable in ld.so, the latter not.
565
566         * include/fcntl.h: Declare __libc_creat.
567
568         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
569         libhurduser-link.so-no-z-defs): New variables.
570
571         * malloc/malloc.c: Revert last change.
572         * malloc/malloc.h (_int_*): Move these decls to ...
573         * include/malloc.h: ... here.  Add attribute_hidden.
574         (_int_valloc): Declare it too.
575
576 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
577
578         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
579         search for removed searchlist.  Reported by Roland McGrath.
580
581         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
582         given as start file.
583
584         * io/ftw.c (ftw_startup): Use correct name in check for symlink
585         without existing target.  Patch by Jim Meyering.
586
587         * Makerules (build-shlib-helper): Don't use -z defs linker option
588         if no-z-defs is defined either.
589
590 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
591
592         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
593         file.
594
595 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
596
597         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
598         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
599
600 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
601
602         * io/ftwtest-sh: Add test case for relative path with /. at the end.
603
604 2003-01-12  Jim Meyering  <jim@meyering.net>
605
606         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
607         use the basename if we've already chdir'd into its parent directory.
608
609 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
610
611         * io/ftw.c (process_entry): Use relative path when using chdir()
612         to change directory after call to ftw_dir.
613         * io/ftwtest-sh: Add test for relative path argument to nftw()
614         with FTW_CHDIR option.
615
616 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
617
618         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
619         Define for powerpc.
620         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
621         into account.
622         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
623         (INTERNAL_SYSCALL): Make use of ERR parameter.
624         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
625         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
626         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
627         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
628
629 2002-01-09  Richard Henderson  <rth@redhat.com>
630
631         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
632         DTPREL64 and TPREL64 without loadbase applied.
633
634 2002-01-09  Richard Henderson  <rth@redhat.com>
635
636         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
637         for NOT_IN_libc.
638
639         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
640         * sysdeps/unix/alpha/sysdep.h: ... here.
641         (PSEUDO_LOADGP): Remove.
642         (PSEUDO_PROLOGUE): Load GP in non-pic case.
643         (SYSCALL_ERROR_LABEL): New.
644         (PSEUDO): Use it in error branch.
645         (PSEUDO_END): Add $syscall_error label.
646
647 2003-01-12  Andreas Jaeger  <aj@suse.de>
648
649         * math/bits/mathcalls.h: Round is a const function.
650
651 2003-01-11  Jim Meyering  <jim@meyering.net>
652
653         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
654         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
655         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
656         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
657         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
658         [!_LIBC] (internal_function, dirent64, MAX): Define.
659         (__set_errno): Define if not already defined.
660         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
661         the basename, not the entire file name.
662         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
663         the basename, not the entire file name.
664
665 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
666
667         * string/tester.c (test_strcpy): Disable last added strcpy until
668         it is fixed.
669
670 2003-01-11  Philip Blundell  <philb@gnu.org>
671
672         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
673
674 2003-01-11  Andreas Schwab  <schwab@suse.de>
675
676         * Makerules: Add vpath for %.dynsym and %.so so that the
677         implicit rule chaining for check-abi works.
678
679 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
680
681         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
682         Add non-PIC case.
683
684 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
685
686         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
687         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
688         gp is used early.
689         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
690         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
691         Ensure libc.so in DT_NEEDED.
692         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
693         CHECK_STATIC_TLS before l_tls_offset use.
694         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
695         Likewise.
696         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
697         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
698         Allocate TLS_PRE_TCB_SIZE bytes below result.
699         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
700         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
701         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
702         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
703         bytes below result and add tcb_offset to memsz.
704         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
705         * sysdeps/ia64/dl-machine.h: Include tls.h.
706         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
707         too.
708         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
709         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
710         * sysdeps/ia64/libc-tls.c: New file.
711
712 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
713
714         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
715         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
716         Fix type.  Move definition out of #if.
717         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
718         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
719         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
720         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
721         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
722         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
723         support.
724         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
725         ftruncate64, pread64, pwrite64, truncate64 entries.
726         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
727         (INLINE_SYSCALL): New version that supports function call like
728         syscalls.  Add __builtin_expect.
729         (LOADARGS_n): Add argument size safety checks.
730         (INTERNAL_SYSCALL): New Macro.
731         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
732         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
733         redefinition of elf_fpreg_t and elf_fpregset_t.
734
735 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
736
737         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
738         simplify test for unloading.  If loader of a DSO is unloaded do not
739         use its scope anymore.  Fall back to own scope and adjust opencounts.
740         Fix several comments.
741         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
742         the l_searchlist, not only for l_initfini.
743
744         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
745         dependencies if objects cannot be removed.  Remove object with the
746         definition as not unloadable if necessary.
747
748         * elf/reldep6.c: Create relocation dependency before closing the first
749         module.
750
751 2003-01-10  Guido G√ľnther  <agx@sigxcpu.org>
752
753         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
754         * sysdeps/unix/mips/brk.S: Likewise.
755         * sysdeps/unix/mips/pipe.S: Likewise.
756
757 2003-01-10  Andreas Schwab  <schwab@suse.de>
758
759         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
760
761         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
762         are known to have the vfork syscall.
763
764         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
765
766         * sysdeps/unix/sysv/linux/kernel-features.h
767         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
768         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
769         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
770
771 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
772
773         * elf/Makefile: Add rules to build and run reldep9 test.
774         * elf/reldep9.c: New file.
775         * elf/reldep9mod1.c: New file.
776         * elf/reldep9mod2.c: New file.
777         * elf/reldep9mod3.c: New file.
778
779 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
780
781         * elf/Makefile: Add rules to build and run nodelete2 test.
782         * elf/nodelete2.c: New file.
783         * elf/nodel2mod1.c: New file.
784         * elf/nodel2mod2.c: New file.
785         * elf/nodel2mod3.c: New file.
786
787 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
788
789         * posix/test-vfork.c (noop): Add __attribute_noinline__.
790         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
791         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
792         defining it.
793         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
794         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
795         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
796         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
797         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
798
799 2003-01-09  Andreas Schwab  <schwab@suse.de>
800
801         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
802
803 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
804
805         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
806         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
807         argument.
808         (INTERNAL_SYSCALL_DECL): Define.
809
810 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
811
812         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
813         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
814         argument.
815         (INTERNAL_SYSCALL_DECL): Define.
816         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
817         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
818         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
819         (INLINE_SYSCALL): Adjust.
820         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
821         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
822         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
823         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
824         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
825         add err argument to INTERNAL_SYSCALL* macros.
826         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
827         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
828         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
829         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
830         Likewise.
831         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
832         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
833         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
834
835 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
836
837         Unify symbols in user namespace exported by libc.so and libc.a.
838         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
839         argp_fmtstream_free, and argp_fmtstream_printf.
840         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
841         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
842         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
843         argp_fmtstream_point.
844         * gmon/gmon.c: Don't define write_profiling.
845         * libio/genops.c: Don't define _cleanup.
846
847         * intl/explodename.c (_nl_find_language.c): Mark as static.
848         * intl/loadinfo.h: Remove _nl_find_language prototype.
849
850         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
851         * libio/libioP.h: Remove declaration.
852
853         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
854         * libio/libioP.h: Remove declaration.
855
856         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
857         * sysdeps/generic/framestate.c: Define STATIC before including
858         unwind-dw2.c.
859
860         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
861
862 2003-01-06  Philip Blundell  <philb@gnu.org>
863
864         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
865         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
866
867         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
868         directive.
869         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
870         (SYSCALL_ERROR): New.
871         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
872         handling code.
873         (INTERNAL_SYSCALL): Define.
874         (INLINE_SYSCALL): Use it.
875         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
876         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
877         SYSCALL_ERROR in place of __syscall_error.
878
879 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
880
881         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
882         __bswap_32, __bswap_64): Put x into temporary variable
883         to avoid warnings.
884         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
885         (inline) functions.
886         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
887         __bswap_32, __bswap_64): Put x into temporary variable
888         to avoid warnings.
889         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
890         (inline) functions.
891         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
892         Likewise.
893
894 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
895
896         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
897         alias.
898
899 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
900
901         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
902         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
903
904 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
905
906         * math/libm-test.inc (significand_test): New function.
907         (main): Call it.
908
909 2003-01-06  Roland McGrath  <roland@redhat.com>
910
911         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
912         arguments.
913         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
914         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
915         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
916
917         * string/tester.c (test_strcpy): Add test with `void *' arguments.
918
919 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
920
921         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
922         return significand and not the exponent.
923         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
924
925         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
926         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
927
928         * malloc/malloc.c: Mark all _int_* functions as static.
929
930 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
931
932         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
933         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
934         handling.
935         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
936
937 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
938
939         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
940         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
941         support.
942         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
943         ftruncate64, truncate64, pread64 and pwrite64 entries.
944         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
945         (INLINE_SYSCALL): Add __builtin_expect.
946         (LOADARGS_n): Add argument size safety checks.
947         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
948         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
949         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
950         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
951         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
952         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
953
954 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
955
956         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
957         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
958         (LIBC_CANCEL_HANDLED): Add.
959
960         * sysdeps/unix/sysv/linux/alpha/sysdep.h
961         (inline_syscall_r0_constraint): Rename to...
962         (inline_syscall_r0_out_constraint): ... this.  Add =.
963         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
964
965 2003-01-06  Andreas Schwab  <schwab@suse.de>
966
967         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
968         sure this is always inlined.
969         (elf_machine_rela): Likewise.
970
971         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
972
973 2003-01-04  Roland McGrath  <roland@redhat.com>
974
975         * Makeconfig (+mkdep): Add -MP flag.
976         Suggested by Art Haas <ahaas@airmail.net>.
977
978 2003-01-05  Andreas Schwab  <schwab@suse.de>
979
980         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
981
982 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
983
984         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
985         SYSCALL_ERROR_HANDLER.
986         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
987         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
988         Add support for cancellation handling.
989         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
990         SYSCALL_ERROR_HANDLER.
991         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
992         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
993         Add support for cancellation handling.
994         (SYSCALL_ERROR_HANDLER): Define PIC variants.
995
996 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
997
998         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
999         __syscall_pread64 and __syscall_pwrite64 cancelable.
1000         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
1001         (INTERNAL_SYSCALL): New macro.
1002         (LOADARGS_0, LOADARGS_1): Fix.
1003
1004 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
1005
1006         * Makerules (build-shlip-helper): Unless told otherwise, add
1007         -Wl,-z,defs to linker command line.
1008         * rt/Makefile (librt.so): Link with ld.so.
1009         * dlfcn/Makefile (libdl.so): Likewise.
1010
1011 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
1012
1013         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
1014         cancellation handling.
1015         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
1016         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
1017
1018 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
1019
1020         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
1021         order of parameters passed to kill.
1022
1023 2003-01-04  Andreas Schwab  <schwab@suse.de>
1024
1025         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
1026
1027 2002-01-03  Paul Eggert  <eggert@twinsun.com>
1028
1029         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
1030         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
1031         when compiling Bison 1.875's `bitset bset = obstack_alloc
1032         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
1033
1034 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
1035
1036         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
1037         unnecessary code.
1038         Correct reference counter in case SIGQUIT handler installation failed.
1039
1040 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
1041
1042         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
1043         Define using _Pragma(weak ...).
1044
1045 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
1046
1047         * resolv/res_libc.c: Provide declaration for __res_init_weak and
1048         reorder declarations.
1049
1050 2003-01-03  Art Haas  <ahaas@airmail.net>
1051
1052         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
1053         initializer syntax to C99.
1054         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
1055         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
1056         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
1057         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
1058         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
1059         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
1060         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
1061         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
1062         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
1063         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
1064         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
1065         * localedata/tests-mbwc/dat_mblen.c: Likewise.
1066         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
1067         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
1068         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
1069         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
1070         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
1071         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
1072         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
1073         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
1074         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
1075         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
1076         * localedata/tests-mbwc/dat_towlower.c: Likewise.
1077         * localedata/tests-mbwc/dat_towupper.c: Likewise.
1078         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
1079         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
1080         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
1081         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
1082         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
1083         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
1084         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
1085         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
1086         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
1087         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
1088         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
1089         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
1090         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
1091         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
1092         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
1093         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
1094         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
1095         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
1096         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
1097         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
1098         * localedata/tests-mbwc/dat_wctob.c: Likewise.
1099         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
1100         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
1101         * localedata/tests-mbwc/dat_wctype.c: Likewise.
1102         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
1103
1104 2003-01-03  Richard Henderson  <rth@redhat.com>
1105
1106         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
1107         (inline_syscall_r0_constraint): New.
1108         (inline_syscall[0-6]): Use them.
1109
1110 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
1111
1112         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
1113         Add rtld_hidden_proto.
1114         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
1115         (_dl_allocate_tls): Likewise.  Remove INTDEF.
1116
1117 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1118
1119         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
1120         Morita <toshiyasu.morita@hsa.hitachi.com>.
1121         * sysdeps/sh/memcpy.S: Likewise.
1122
1123 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
1124
1125         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
1126         any, but unify the test.
1127
1128 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
1129
1130         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
1131         sigaction): Protect weak_alias and libc_hidden_weak with
1132         #ifndef LIBC_SIGACTION.
1133         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
1134         sigaction): Likewise.
1135         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
1136         sigaction): Likewise.
1137         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
1138         sigaction): Likewise.
1139         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
1140         sigaction): Likewise.
1141         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
1142         sigaction): Likewise.
1143         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
1144         sigaction): Likewise.
1145         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
1146         sigaction): Likewise.  Remove SIGCANCEL handling here.
1147         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
1148         Likewise.
1149
1150 2003-01-02  Art Haas  <ahaas@airmail.net>
1151
1152         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
1153
1154 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
1155
1156         * posix/getconf.c: Update copyright year.
1157         * nss/getent.c: Likewise.
1158         * nscd/nscd_nischeck.c: Likewise.
1159         * iconv/iconvconfig.c: Likewise.
1160         * iconv/iconv_prog.c: Likewise.
1161         * elf/ldconfig.c: Likewise.
1162         * catgets/gencat.c: Likewise.
1163         * csu/version.c: Likewise.
1164         * elf/ldd.bash.in: Likewise.
1165         * elf/sprof.c (print_version): Likewise.
1166         * locale/programs/locale.c: Likewise.
1167         * locale/programs/localedef.c: Likewise.
1168         * nscd/nscd.c (print_version): Likewise.
1169         * debug/xtrace.sh: Likewise.
1170         * malloc/memusage.sh: Likewise.
1171         * malloc/mtrace.pl: Likewise.
1172
1173 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
1174
1175         * io/sys/stat.h: Include time.h with __need_timespec even if
1176         __USE_MISC is defined but __USE_XOPEN is not.
1177
1178 2003-01-01  Andreas Jaeger  <aj@suse.de>
1179
1180         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
1181         type to avoid strict aliasing problem.
1182         (_nss_dns_gethostbyname2_r): Likewise.
1183         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
1184         (_nss_dns_getnetbyname_r): Likewise.
1185         * resolv/gethnamaddr.c (_gethtent): Likewise.
1186         (gethostbyname2): Likewise.
1187
1188 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1189
1190         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
1191         to avoid using the exported symbols.  Define aliases with the
1192         original names separately.
1193
1194         * include/time.h: Add libc_hidden_proto for __strftime_l.
1195         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
1196         * time/strftime.c: Always use libc_hidden_def if _LIBC.
1197
1198         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
1199         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
1200
1201         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
1202         tr_break.
1203
1204         * csu/Makefile (routines): Add dso_handle.
1205         * csu/dso_handle.c: New file.
1206
1207 2002-12-31  Roland McGrath  <roland@redhat.com>
1208
1209         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
1210         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
1211         (S-CPPFLAGS): Add -DASSEMBLER here instead.
1212         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
1213
1214 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1215
1216         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
1217         is available.
1218
1219 2002-12-31  Andreas Jaeger  <aj@suse.de>
1220
1221         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
1222         with Linux kernel.
1223         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
1224         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
1225         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
1226
1227         * sysdeps/unix/sysv/linux/kernel_stat.h
1228         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
1229
1230         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
1231         __unused[1-3] since they're needed by some platforms.  Handle
1232         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
1233
1234         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
1235         for structs stat and stat64.
1236         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
1237         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
1238         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
1239         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
1240
1241         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
1242
1243         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
1244         nsec resolution changes.
1245         (xstat64_conv): Likewise.
1246         (xstat32_conv): Likewise.
1247
1248         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
1249         struct kernel_stat.
1250
1251         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
1252         structs stat and stat64.
1253
1254         * time/time.h (__timespec_defined): Define for __USE_MISC.
1255
1256 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1257
1258         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
1259         and __libc_current_sigrtmax.
1260
1261 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
1262
1263         * include/errno.h (__errno_location): Add prototype.
1264         Use libc_hidden_proto unconditionally.
1265         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
1266         unconditionally.
1267         * include/resolv.h (__res_state): Likewise.
1268
1269         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
1270         * include/sys/socket.h (accept): Add libc_hidden_proto.
1271         * include/errno.h (__errno_location): Likewise.
1272         * include/netdb.h (__h_errno_location): Likewise.
1273         * include/resolv.h (__res_state): Likewise.
1274         * include/unistd.h (__lseek): Likewise.
1275         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
1276         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
1277         * sysdeps/generic/res-state.c (__res_state): Likewise.
1278         * sysdeps/generic/accept.c (accept): Likewise.
1279         * sysdeps/generic/lseek.c (__lseek): Likewise.
1280         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
1281         __libc_current_sigrtmax): Likewise.
1282         * sysdeps/mach/hurd/accept.c (accept): Likewise.
1283         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
1284         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
1285         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
1286         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
1287         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
1288         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
1289         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
1290         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
1291         alias to llseek.
1292         (__GI_accept): New alias to accept.
1293         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
1294         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
1295         New alias to llseek.
1296         (__GI_accept): New alias to accept.
1297         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
1298         Likewise.
1299         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
1300         Likewise.
1301         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
1302
1303         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
1304         strong_alias (name, __GI_name).
1305         * sysdeps/arm/bsd-_setjmp.S : Likewise.
1306         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
1307         * sysdeps/i386/bsd-_setjmp.S : Likewise.
1308         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
1309         * sysdeps/mips/bsd-_setjmp.S : Likewise.
1310         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
1311         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
1312         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
1313         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
1314         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
1315         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
1316         * sysdeps/sh/bsd-_setjmp.S : Likewise.
1317         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
1318         * sysdeps/unix/arm/fork.S : Likewise.
1319         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
1320         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
1321         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
1322         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
1323         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
1324         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
1325         * sysdeps/unix/i386/fork.S : Likewise.
1326         * sysdeps/unix/mips/fork.S : Likewise.
1327         * sysdeps/unix/sparc/fork.S : Likewise.
1328         * sysdeps/unix/sparc/vfork.S : Likewise.
1329         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
1330         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
1331         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
1332         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
1333         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
1334         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
1335         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
1336         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
1337         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
1338         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
1339         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
1340         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
1341         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
1342         * sysdeps/unix/fork.S : Likewise.
1343         * sysdeps/vax/bsd-_setjmp.S : Likewise.
1344         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
1345
1346         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
1347         inclusion.
1348
1349 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1350
1351         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
1352         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
1353         * sysdeps/mach/hurd/fork.c: Likewise.
1354         * sysdeps/unix/sysv/aix/fork.c: Likewise.
1355         * sysdeps/unix/fork.S: Add __GI___fork alias.
1356         * sysdeps/unix/arm/fork.S: Likewise.
1357         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
1358         * sysdeps/unix/i386/fork.S: Likewise.
1359         * sysdeps/unix/mips/fork.S: Likewise.
1360         * sysdeps/unix/sparc/fork.S: Likewise.
1361         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
1362         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
1363         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
1364         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
1365         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
1366         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
1367         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
1368         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
1369         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
1370         * sysdeps/unix/sparc/vfork.S: Likewise.
1371         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
1372         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
1373         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
1374         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
1375         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
1376         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
1377         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
1378         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1379
1380         * include/time.h: Add libc_hidden_proto for __nanosleep.
1381         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
1382         * sysdeps/mach/nanosleep.c: Likewise.
1383         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
1384         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
1385
1386         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
1387         _IO_list_unlock, and _IO_list_resetlock.
1388         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
1389         _IO_list_unlock, and _IO_list_resetlock.
1390
1391         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
1392         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
1393         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
1394         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
1395
1396         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
1397         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
1398         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
1399         __GI___longjmp alias.
1400
1401         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
1402         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
1403         * sysdeps/arm/bsd-_setjmp.S: Likewise.
1404         * sysdeps/generic/bsd-_setjmp.c: Likewise.
1405         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
1406         * sysdeps/i386/bsd-_setjmp.S: Likewise.
1407         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
1408         * sysdeps/mips/bsd-_setjmp.S: Likewise.
1409         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1410         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
1411         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
1412         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
1413         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
1414         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
1415         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
1416         * sysdeps/sh/bsd-_setjmp.S: Likewise.
1417         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
1418         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
1419         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
1420         * sysdeps/vax/bsd-_setjmp.S: Likewise.
1421         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
1422
1423 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
1424
1425         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
1426
1427 2002-12-30  Roland McGrath  <roland@redhat.com>
1428
1429         * Rules (generated): Target removed.
1430         * mach/Makefile (generated): Define it here instead.
1431
1432         * math/Makefile (generated): Add m_*l and m_*f variants too.
1433
1434 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
1435
1436         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
1437         the to-be-deleted objects right away instead of later separately.
1438         The latter fails because the scope data structures of the DSO
1439         might already be gone.
1440
1441         * elf/Makefile: Add rules to build and run reldep8 test.
1442         * elf/reldep8.c: New file.
1443         * elf/reldep8mod1.c: New file.
1444         * elf/reldep8mod2.c: New file.
1445         * elf/reldep8mod3.c: New file.
1446         Contributed by Jakub Jelinek.
1447
1448 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
1449
1450         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
1451         checking of return value ENOSYS from getdents64.
1452
1453 2002-12-28  Andreas Schwab  <schwab@suse.de>
1454
1455         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
1456         ($(common-objpfx)s-%.d): Generalized from
1457         $(common-objpfx)s-proto.d rule.
1458         (common-generated): Add s-proto-cancel.d.
1459         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
1460         cancellable syscalls.
1461         * sysdeps/unix/s-proto-cancel.S: New file.
1462
1463 2002-12-29  Roland McGrath  <roland@redhat.com>
1464
1465         * resolv/res_libc.c: Move _res defn magic after res_init defn
1466         so _res macro is in effect for that code.
1467
1468         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
1469         pattern for prepending $(..) so it doesn't affect $(foo).
1470
1471         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
1472
1473 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
1474
1475         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
1476         in hwcap.
1477
1478 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
1479
1480         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
1481
1482 2002-12-28  Andreas Jaeger  <aj@suse.de>
1483
1484         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
1485         avoid warning.
1486         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
1487
1488 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1489
1490         * inet/herrno.c (__h_errno_location): Remove.
1491         * inet/Makefile (routines): Add herrno-loc.
1492         * resolv/res_libc.c (__res_state): Remove.
1493         * resolv/Makefile (routines): Add res-state.
1494         * sysdeps/generic/herrno-loc.c: New file.
1495         * sysdeps/generic/res-state.c: New file.
1496
1497 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1498
1499         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
1500         Only define if USE_DL_SYSINFO is defined.
1501
1502 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
1503
1504         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
1505         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
1506         Define. Patch by Richard Henderson and Jes Sorensen.
1507         (PSEUDO): Remove unnecessary ;;.
1508         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
1509         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
1510         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
1511         if not initializing thread pointer.
1512         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
1513         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
1514         make it weak also if NONTLS_INIT_TP.
1515         * sysdeps/unix/common/pause.c: Handle cancellation.
1516         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
1517         (LOADSYSCALL): Remove.
1518         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1519         (SYSCALL_ERROR_HANDLER): Use it.
1520         (PSEUDO): Don't jump around error handler.
1521         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
1522         jump around error handler.
1523         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
1524         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
1525         to __syscall_error_handler on failure.
1526         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
1527         (LOADSYSCALL): Remove.
1528         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1529         (SYSCALL_ERROR_HANDLER): Use it.
1530         (PSEUDO): Don't jump around error handler.
1531         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
1532         jump around error handler.
1533         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
1534         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
1535         to __syscall_error_handler on failure.
1536
1537 2002-12-27  Roland McGrath  <roland@redhat.com>
1538
1539         * scripts/gen-as-const.awk: New file.
1540         * Makefile (distribute): Add it.
1541         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
1542         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
1543         to the list.
1544         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
1545
1546 2002-12-27  Andreas Schwab  <schwab@suse.de>
1547
1548         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
1549
1550 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1551
1552         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
1553         _environ is NULL.
1554
1555 2002-12-27  Andreas Schwab  <schwab@suse.de>
1556
1557         * Makerules ($(common-objpfx)%.make): Filter through
1558         $(sed-remove-objpfx).
1559
1560 2002-12-23  Roland McGrath  <roland@redhat.com>
1561
1562         * scripts/abilist.awk: Produce a more compact format, divided into
1563         stanzas for each version set, the set name listed only once.
1564         * scripts/extract-abilist.awk: New file.
1565         * scripts/merge-abilist.awk: New file.
1566         * Makerules (check-abi-%, update-abi-%): New pattern rules.
1567         (update-abi, check-abi): New targets.
1568         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
1569
1570 2002-12-19  Roland McGrath  <roland@redhat.com>
1571
1572         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
1573
1574         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
1575         INTERNAL_SYSCALL.
1576
1577 2002-12-21  Andreas Schwab  <schwab@suse.de>
1578
1579         * elf/check-textrel.c (handle_file): Swap p_type.
1580
1581 2002-12-21  Andreas Schwab  <schwab@suse.de>
1582
1583         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
1584         (INLINE_SYSCALL): Use it.
1585         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
1586         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
1587
1588         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
1589         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
1590
1591 2002-12-20  Art Haas  <ahaas@airmail.net>
1592
1593         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
1594         syntax to C99.
1595
1596 2002-12-21  Philip Blundell  <philb@gnu.org>
1597
1598         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
1599         top as seventh arg to __libc_start_main.
1600         Reported by paulnash@wildseed.com.
1601
1602         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
1603
1604         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
1605         compatibility cruft when new enough kernel is assumed.
1606
1607 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
1608
1609         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
1610         instead of INLINE_SYSCALL.
1611
1612 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1613
1614         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
1615         typo.
1616
1617         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
1618         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1619         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
1620         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1621         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
1622         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1623         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1624         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1625         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1626         Patch by William Lee Irwin <wli@holomorphy.com>.
1627
1628 2002-12-20  Andreas Schwab  <schwab@suse.de>
1629
1630         * locale/programs/ld-measurement.c (measurement_output): Fix
1631         index calculation.
1632
1633 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1634
1635         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
1636         Redefine _IO_flockifle and _IO_funlockfile as inlines.
1637
1638         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
1639         builds add "tls" in the search path.
1640         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
1641         (path_hwcap): Recognize "tls".
1642
1643 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1644
1645         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
1646         __waitpid instead of waitpid.
1647
1648         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
1649         int $0x80.
1650         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
1651         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
1652         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
1653
1654         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
1655         information for system calls.
1656
1657         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
1658         for ld.so.
1659
1660         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
1661
1662 2002-12-19  Roland McGrath  <roland@redhat.com>
1663
1664         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
1665         * iconvdata/ibm922.h: Likewise.
1666         * iconvdata/ibm930.h: Likewise.
1667         * iconvdata/ibm932.h: Likewise.
1668         * iconvdata/ibm933.h: Likewise.
1669         * iconvdata/ibm935.h: Likewise.
1670         * iconvdata/ibm937.h: Likewise.
1671         * iconvdata/ibm939.h: Likewise.
1672         * iconvdata/ibm943.h: Likewise.
1673         * iconvdata/isiri-3342.h: Likewise.
1674
1675 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1676
1677         * test-skeleton.c (main): Make sure correct value is seen as
1678         argv[0] after adjustment of argv, and argc.
1679
1680         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
1681         RTLD_CORRECT_DYNAMIC_WEAK is defined.
1682
1683 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
1684
1685         * nscd/connections.c (nscd_run): Shut up warning.
1686         * tst-ungetc.c (assert): Undefined before redefining.
1687
1688 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1689
1690         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
1691         is used.
1692
1693 2002-12-17  Art Haas  <ahaas@airmail.net>
1694
1695         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
1696         * iconvdata/cp775.h: Likewise.
1697         * iconvdata/ibm1046.h: Likewise.
1698         * iconvdata/ibm1124.h: Likewise.
1699         * iconvdata/ibm1129.h: Likewise.
1700         * iconvdata/ibm1132.h: Likewise.
1701         * iconvdata/ibm1133.h: Likewise.
1702         * iconvdata/ibm1160.h: Likewise.
1703         * iconvdata/ibm1161.h: Likewise.
1704         * iconvdata/ibm1162.h: Likewise.
1705         * iconvdata/ibm1163.h: Likewise.
1706         * iconvdata/ibm1164.h: Likewise.
1707
1708 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1709
1710         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
1711         __ASSUME_CLONE_THREAD_FLAGS is defined.
1712         * sysdeps/unix/sysv/linux/kernel-features.h
1713         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
1714
1715 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1716
1717         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
1718         of asm.
1719         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1720
1721         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
1722         _dl_sysinfo.
1723         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1724         code.
1725         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
1726         _rtld_global.
1727         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1728         code.
1729         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
1730         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
1731         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
1732         Add _dl_sysinfo.
1733
1734 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
1735
1736         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
1737         __libc_writev to...
1738         [libc: GLIBC_PRIVATE]: ...here.
1739         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
1740         __libc_msgsnd to...
1741         [libc: GLIBC_PRIVATE]: ...here.
1742
1743 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1744
1745         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
1746         Use it instead of directly int $0x80.
1747         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
1748         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
1749         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
1750         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1751         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1752         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
1753
1754 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1755
1756         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
1757
1758         * elf/elf.h (AT_SYSINFO): New define.
1759         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
1760         AT_SYSINFO.
1761
1762 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1763
1764         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
1765         Make cancelable.
1766         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
1767         Likewise.
1768         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
1769         Likewise.
1770         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
1771         Likewise.
1772         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
1773         Likewise.
1774         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
1775
1776         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
1777         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
1778         available, otherwise __libc_maybe_call.
1779         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
1780         cancellation handling.
1781         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
1782
1783 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
1784
1785         * posix/regcomp.c (free_workarea_compile): Free the new member
1786         ORG_INDICES.
1787         (analyze): Initialize ORG_INDICES.
1788         (duplicate_node_closure): Search for a existing node, which is
1789         duplicated from the node ORG_DEST and satisfies the constraint
1790         CONSTRAINT.  And use it to avoid inifimite loop.
1791         (search_duplicated_node): New function.
1792         (duplicate_node): Store the index of the original node.
1793         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
1794         if needed.
1795         * posix/regex_internal.h (re_dfa_t): Add new members.
1796
1797 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1798
1799         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
1800
1801 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1802
1803         * sysdeps/posix/system.c (do_system): Add support for installation
1804         of cancellation handlers.
1805         * sysdeps/unix/sysv/linux/i386/system.c: New file.
1806
1807         * stdlib/Makefile (tests): Add tst-system.
1808         * stdlib/tst-system.c: New file.
1809
1810         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
1811         CENABLE]: Don't lose content of %ebx.
1812
1813 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1814
1815         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
1816         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
1817
1818 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1819
1820         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
1821         fails to return a function pointer don't use it.
1822
1823 2002-12-16  Art Haas  <ahaas@airmail.net>
1824
1825         * io/ftw.c: Convert GCC extension initializer syntax to C99.
1826         * iconvdata/iso-ir-165.c: Likewise.
1827         * iconvdata/jis0208.c: Likewise.
1828         * iconvdata/jis0212.c: Likewise.
1829
1830 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1831
1832         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
1833         epoll_ctl, and epoll_wait.
1834         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
1835         epoll_create, epoll_ctl, and epoll_wait.
1836         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
1837         Davide Libenzi <davidel@xmailserver.org>.
1838         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
1839         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1840         Add sys/epoll.h.
1841
1842 2002-12-16  Art Haas  <ahaas@airmail.net>
1843
1844         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
1845         syntax to C99
1846         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
1847         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
1848         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
1849
1850 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1851
1852         * stdio-common/Makefile (routines): Remove lockfile.  Add
1853         flockfile, ftrylockfile, and funlockfile.
1854         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
1855         * sysdeps/generic/flockfile.c: New file.
1856         * sysdeps/generic/ftrylockfile.c: New file.
1857         * sysdeps/generic/funlockfile.c: New file.
1858
1859 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1860
1861         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
1862         macros instead of doing the calls directly.
1863         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
1864         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
1865         targets.
1866
1867 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1868
1869         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
1870         * sysdeps/ieee754/bits/nan.h: Likewise.
1871
1872         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
1873         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
1874
1875 2002-12-16  Roland McGrath  <roland@redhat.com>
1876
1877         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
1878         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
1879         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
1880
1881         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
1882         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
1883         s_putpmsg.
1884         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
1885         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
1886         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
1887         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
1888         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
1889         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
1890         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
1891         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
1892
1893 2002-12-13  Paul Eggert  <eggert@twinsun.com>
1894
1895         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
1896         is now u_int, not int.
1897         (struct XDR.x_handy): Now u_int, not int.
1898         * sunrpc/xdr_mem.c: Include <limits.h>.
1899         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
1900         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
1901         x_handy is now unsigned, not signed.
1902         Do not decrement x_handy if no change is made.
1903         (xdrmem_setpos): Check for int overflow.
1904         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
1905         (xdr_sizeof): Remove cast that is now unnecessary, now that
1906         x_handy is unsigned.
1907
1908 2002-12-15  Art Haas  <ahaas@airmail.net>
1909
1910         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
1911         * iconvdata/gap.awk: Likewise.
1912         * iconvdata/gen-8bit-gap-1.sh: Likewise.
1913         * iconvdata/gen-8bit-gap.sh: Likewise.
1914         * locale/C-address.c: Likewise.
1915         * locale/C-collate.c: Likewise.
1916         * locale/C-ctype.c: Likewise.
1917         * locale/C-identification.c: Likewise.
1918         * locale/C-measurement.c: Likewise.
1919         * locale/C-messages.c: Likewise.
1920         * locale/C-monetary.c: Likewise.
1921         * locale/C-name.c: Likewise.
1922         * locale/C-numeric.c: Likewise.
1923         * locale/C-paper.c: Likewise.
1924         * locale/C-telephone.c: Likewise.
1925         * locale/C-time.c: Likewise.
1926         * nscd/connections.c: Likewise.
1927         * nscd/grpcache.c: Likewise.
1928         * nscd/hstcache.c: Likewise.
1929         * nscd/pwdcache.c: Likewise.
1930         * stdio-common/vfprintf.c: Likewise.
1931         * stdlib/random.c: Likewise.
1932         * sysdeps/generic/siglist.c: Likewise.
1933         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1934         * sysdeps/ieee754/bits/nan.h: Likewise.
1935         * sysdeps/posix/sprofil.c: Likewise.
1936         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
1937         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
1938         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
1939
1940 2002-12-15  Roland McGrath  <roland@redhat.com>
1941
1942         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
1943
1944         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
1945         <tls.h> here, no need for it.
1946         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1947
1948         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
1949         parameter, not varargs parameter.
1950
1951         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
1952         argument so it's not an unused variable.
1953
1954         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
1955         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
1956         for users.
1957
1958         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
1959
1960 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1961
1962         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
1963         original __libc_fcntl code.  Just renamed.
1964
1965 2002-12-15  Andreas Schwab  <schwab@suse.de>
1966
1967         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
1968
1969 2002-12-14  Olaf Hering  <olh@suse.de>
1970
1971         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
1972         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
1973
1974 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1975
1976         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
1977
1978         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
1979         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
1980
1981         * sysdeps/unix/sysv/linux/open64.c: New file.
1982
1983         * sysdeps/generic/pselect.c: Add support for cancellation handling.
1984         * sysdeps/posix/open64.c: Likewise.
1985         * sysdeps/posix/sigpause.c: Likewise.
1986         * sysdeps/posix/sigwait.c: Likewise.
1987         * sysdeps/posix/system.c: Likewise.
1988         * sysdeps/posix/waitid.c: Likewise.
1989         * sysdeps/unix/sysv/linux/accept.S: Likewise.
1990         * sysdeps/unix/sysv/linux/connect.S: Likewise.
1991         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
1992         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
1993         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
1994         * sysdeps/unix/sysv/linux/poll.c: Likewise.
1995         * sysdeps/unix/sysv/linux/pread.c: Likewise.
1996         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
1997         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
1998         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
1999         * sysdeps/unix/sysv/linux/readv.c: Likewise.
2000         * sysdeps/unix/sysv/linux/recv.S: Likewise.
2001         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
2002         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
2003         * sysdeps/unix/sysv/linux/send.S: Likewise.
2004         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
2005         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
2006         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
2007         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
2008         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
2009         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
2010         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
2011         * sysdeps/unix/sysv/linux/wait.c: Likewise.
2012         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
2013         * sysdeps/unix/sysv/linux/writev.c: Likewise.
2014         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2015         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
2016
2017 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2018
2019         * sysdeps/generic/sysdep-cancel.h: New file.
2020         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
2021         cancelable syscall.
2022         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
2023         recvmsg, send, sendmsg, sendto): Make cancelable.
2024         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
2025         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
2026         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2027         sendto, osf_select): Likewise.
2028         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
2029         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
2030         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
2031         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2032         sendto): Likewise.
2033         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
2034         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
2035         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
2036         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2037         sendto): Likewise.
2038         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
2039         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2040         sendto, select): Likewise.
2041         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
2042         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
2043         Likewise.
2044         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
2045         select, fcntl): Likewise.
2046         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
2047         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
2048         read, readv, select, sigsuspend, write, writev): Likewise.
2049
2050 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2051
2052         * dirent/bug-readdir1.c: Include unistd.h.
2053
2054 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
2055
2056         * locale/programs/locale.c: Include locarchive.h.
2057         (ARCHIVE_NAME): Define.
2058         (write_archive_locales): New function.
2059         (write_locales): Use it.  Ensure the same locale is not printed
2060         multiple times in verbose mode.
2061         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
2062         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
2063         functions.
2064         (struct nameent): New type.
2065         (nameentcmp): New function.
2066
2067 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2068
2069         * posix/regex_internal.c (re_string_context_at): Guard wide char
2070         code with #ifdef RE_ENABLE_I18N.
2071
2072 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
2073
2074         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
2075
2076 2002-12-13  Roland McGrath  <roland@redhat.com>
2077
2078         * posix/bug-regex15.c: New file.
2079         * posix/Makefile (tests): Add it.
2080
2081         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
2082         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
2083
2084 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
2085
2086         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
2087
2088         * misc/syslog.c (log_cleanup): Don't use parameter in
2089         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
2090         pass NULL instead of a pointer to syslog_lock.
2091
2092 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
2093
2094         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
2095         linker map for all iconv modules.
2096         (distribute): Add gconv.map.
2097         * iconvdata/gconv.map: New file.
2098
2099         * elf/Makefile: Also check all iconv modules for text relocations.
2100
2101         * stdlib/Makefile: Remove code to automatically import GMP.
2102
2103         * elf/Makefile (tests): Add rules to build and run check-textrel.
2104         * elf/check-textrel.c: New file.
2105
2106         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
2107         directive.
2108
2109 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
2110
2111         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
2112         not st.st[am]time.
2113
2114 2002-04-30  Bruno Haible  <bruno@clisp.org>
2115
2116         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
2117         the encoding if it already has slashes.
2118         Reported by Perry Rapp <prapp@erols.com>.
2119
2120 2002-12-11  Roland McGrath  <roland@redhat.com>
2121
2122         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
2123         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
2124         Turn off PIC for compiling this file.
2125
2126 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
2127
2128         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
2129         definitions.  Not needed.
2130         [_LIBC]: Use definitions from libc-lock.h instead of referencing
2131         pthread routines directly.
2132         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
2133         mutex_init calls.
2134         (arena_get2): Don't look at return value of mutex_lock.
2135
2136 2002-12-11  Roland McGrath  <roland@redhat.com>
2137
2138         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
2139         elf-init.o instead of compiling a PIC version.
2140
2141 2002-12-11  Bruno Haible  <bruno@clisp.org>
2142
2143         * intl/gettext.h: Renamed to ...
2144         * intl/gmo.h: ... here.
2145         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
2146         * intl/gettextP.h: Update.
2147         * intl/loadmsgcat.c: Update.
2148
2149         * intl/gettextP.h (PARAMS): Make more portable.
2150         (attribute_hidden): Define as empty macro if not already defined.
2151         * intl/hash-string.h (PARAMS): Make more portable.
2152         * intl/loadinfo.h (PARAMS): Likewise.
2153         * intl/plural-exp.h (PARAMS): Likewise.
2154         (attribute_hidden): Move definition near the definition of
2155         internal_function.
2156
2157         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
2158         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
2159
2160 2002-07-13  Bruno Haible  <bruno@clisp.org>
2161
2162         * intl/dcigettext.c (freea): New macro.
2163         (FREE_BLOCKS): Free also the registered blocks.
2164         (DCIGETTEXT): Free the 'search' variable.
2165         Reported by Andreas Fischer <a.fischer@asentics.de>.
2166
2167 2002-04-27  Bruno Haible  <bruno@clisp.org>
2168
2169         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
2170         * intl/dcigettext.c: Likewise.
2171         * intl/dcgettext.c: Likewise.
2172         * intl/dgettext.c: Likewise.
2173         * intl/gettext.c: Likewise.
2174         * intl/dcngettext.c: Likewise.
2175         * intl/dngettext.c: Likewise.
2176         * intl/ngettext.c: Likewise.
2177         * intl/textdomain.c: Likewise.
2178         * intl/bindtextdom.c: Likewise.
2179         * intl/plural-exp.h: Likewise.
2180
2181 2002-01-02  Bruno Haible  <bruno@clisp.org>
2182
2183         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
2184
2185 2001-04-30  Bruno Haible  <bruno@clisp.org>
2186
2187         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
2188         default macro definitions.  Needed for mingw32.
2189
2190 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
2191
2192         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
2193         __builtin_constant_p to macro parameter.
2194
2195         * sysdeps/generic/sigpause.c: Define all functions as weak.
2196         * sysdeps/posix/sigpause.c: Likewise.
2197
2198         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
2199         type size_t.
2200
2201 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
2202
2203         * elf/tst-array1.c (preinit_array, init_array, fini_array):
2204         Explicitly align the array to sizeof (void *).
2205         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
2206
2207         * include/libc-symbols.h: Fix a comment typo.
2208
2209         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
2210         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
2211         Likewise.
2212         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
2213         Likewise.
2214         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
2215         (__libc_sigsuspend): Likewise.
2216         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
2217         (__libc_sigsuspend): Likewise.
2218         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
2219         (creat): New weak alias.
2220
2221 2002-12-10  Roland McGrath  <roland@redhat.com>
2222
2223         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
2224         contributes a manual chapter.
2225         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
2226         around xref to it.
2227
2228         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
2229         and move contents to ...
2230         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
2231         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
2232         it instead of duplicating its contents.
2233         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
2234
2235 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
2236
2237         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
2238         defined.
2239         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
2240         function.
2241         (EXTRA_LD_ENVVARS): Use it.
2242         (DL_OSVERSION_INIT): Define.
2243         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
2244         dl-librecon.h.
2245         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
2246
2247 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
2248
2249         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
2250
2251         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
2252         call.  It is not allowed to destroy pthread mutexes which are
2253         still in use even though it is safe for our implementations.  If
2254         somebody still uses the descriptor it is a bug.
2255
2256 2002-12-09  Richard Henderson  <rth@redhat.com>
2257
2258         * csu/abi-note.S: Use .p2align, not .align.
2259
2260 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
2261
2262         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
2263         __libc_select aliases.
2264
2265         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
2266         alias.
2267
2268         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
2269
2270         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
2271
2272         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
2273
2274         * sysdeps/unix/syscalls.list: Define __libc_select alias.
2275
2276         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
2277
2278         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
2279         __libc___xpg_sigpause aliases.
2280
2281         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
2282
2283         * misc/error.c: Remove use of USE_IN_LIBIO.
2284
2285 2002-12-08  Roland McGrath  <roland@redhat.com>
2286
2287         * elf/Makefile (tests): Uncomment tst-array[123].
2288         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
2289         * csu/elf-init.c: New file.
2290         * csu/Makefile (routines, static-only-routines): Add elf-init.
2291         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
2292         and __libc_csu_fini in place of _fini.
2293         * sysdeps/arm/elf/start.S: Likewise.
2294         * sysdeps/cris/elf/start.S: Likewise.
2295         * sysdeps/hppa/elf/start.S: Likewise.
2296         * sysdeps/i386/elf/start.S: Likewise.
2297         * sysdeps/ia64/elf/start.S: Likewise.
2298         * sysdeps/m68k/elf/start.S: Likewise.
2299         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
2300         * sysdeps/mips/elf/start.S: Likewise.
2301         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
2302         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
2303         * sysdeps/s390/s390-32/elf/start.S: Likewise.
2304         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2305         * sysdeps/sh/elf/start.S: Likewise.
2306         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
2307         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2308         * sysdeps/x86_64/elf/start.S: Likewise.
2309
2310         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
2311         struct containing function ptr and value, free it.
2312         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
2313         It's not safe to let the new thread use the SIGEV pointer.
2314
2315 2001-10-20  Paul Eggert  <eggert@twinsun.com>
2316
2317         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
2318         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
2319         Use strerror_r that is only a macro, even if it is not a function.
2320         (strerror): Check for HAVE_DECL_STRERROR before declaring.
2321         (private_strerror): Use prototypes, not old-style function definition.
2322         (print_errno_message): New function.
2323         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
2324         char*-flavored one.
2325         (error_tail, error, error_at_line): Use it.
2326
2327 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
2328
2329         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
2330
2331 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
2332
2333         * scripts/output-format.sed: Fix bug in one of the s expressions
2334         which used / for one too many things.
2335
2336         * include/unistd.h: Declare __libc_close.
2337
2338 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
2339
2340         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
2341
2342 2002-12-07  Roland McGrath  <roland@redhat.com>
2343
2344         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
2345         from 2002-12-06, but remove unnecessary memset call without removing
2346         necessary copy of initialization image.
2347
2348         * Makerules ($(common-objpfx)format.lds): New target.
2349         (common-generated): Add it.
2350         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
2351         * scripts/output-format.sed: New file.
2352         * Makefile (distribute): Add it.
2353
2354 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
2355
2356         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
2357         Reported by Art Haas <ahaas@airmail.net>.
2358
2359 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
2360
2361         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
2362
2363 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
2364
2365         * string/test-strncpy.c (do_random_tests): Improve test coverage.
2366
2367 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2368
2369         * test-skeleton.c (timeout_handler): Allow expected signal to be
2370         SIGALRM.
2371
2372         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
2373
2374         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
2375
2376 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
2377
2378         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
2379         (SYSCALL_ERROR_HANDLER): Fix a pasto.
2380         Reported by Jeff Bailey <jbailey@nisa.net>.
2381
2382 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2383
2384         * sysdeps/generic/libc-tls.c: Undo last patch.
2385
2386         * include/wctype.h: Define iswalnum with libc_hidden_proto.
2387
2388         * include/signal.h: Define raise with libc_hidden_proto.
2389
2390         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
2391         __execve instead of snprintf and execve.
2392
2393         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
2394         again a bit.
2395
2396 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
2397
2398         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
2399         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
2400
2401 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2402
2403         * misc/syslog.c (log_cleanup): New function.
2404         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
2405         (closelog): Likewise.
2406
2407         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
2408         * elf/dl-iteratephdr.c: Likewise.
2409         * elf/dl-lookup.c: Likewise.
2410         * elf/dl-misc.c: Likewise.
2411         * elf/dl-open.c: Likewise.
2412         * elf/dl-support.c: Likewise.
2413         * elf/rtld.c: Likewise.
2414         * sysdeps/generic/ldsodefs.h: Likewise.
2415         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
2416         * sysdeps/mach/bits/libc-lock.h: Likewise.
2417         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
2418
2419 2002-12-06  Roland McGrath  <roland@redhat.com>
2420
2421         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
2422
2423         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
2424         (malloc_starter, memalign_starter, free_starter): Don't define these.
2425         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
2426         Don't declare them either.
2427         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
2428         __pthread_initialize, so no need to set hooks to *_starter.
2429         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
2430         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
2431         (__libc_malloc_pthread_startup): New function.
2432         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
2433
2434         * malloc/hooks.c (memalign_starter): New function.
2435         * malloc/malloc.c: Declare it.
2436         * malloc/arena.c (save_memalign_hook): New variable.
2437         (ptmalloc_init): Set __memalign_hook to memalign_starter.
2438
2439         * elf/dl-minimal.c (free): Clear the memory.
2440         (calloc): Just call malloc, knowing all memory it returns is cleared.
2441
2442         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
2443         malloc and memset; calloc can avoid the zeroing when redundant.
2444         (_dl_tls_setup): Likewise.
2445         * elf/dl-load.c (decompose_rpath): Likewise.
2446         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
2447         call, since memory from sbrk at startup is already zero.
2448
2449         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
2450         error string for failure, null for success.  Update callers.
2451         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
2452         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2453
2454 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
2455
2456         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
2457         args to i:iipi.
2458         (readahead): Change args to i:iii.
2459         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
2460         Change args to i:iii.
2461         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
2462         args to i:iiii.
2463
2464 2002-12-05  Roland McGrath  <roland@redhat.com>
2465
2466         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
2467         call all functions rather than none.
2468         Reported by Mark P. Mitchell <mark@codesourcery.com>.
2469
2470 2002-12-04  Roland McGrath  <roland@redhat.com>
2471
2472         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
2473         on _nl_current_LC_* variables.
2474
2475 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
2476
2477         * dirent/bug-readdir1.c (main): Don't call closedir, just close
2478         the file descriptor.  This is testing what the bug report was about.
2479
2480 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
2481
2482         * po/be.po: New file.
2483
2484         * argp/Makefile (tests): Add tst-argp1.
2485
2486         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
2487         Change type of _attribute to void*.
2488         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
2489         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
2490         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
2491         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
2492         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
2493
2494 2002-12-04  Roland McGrath  <roland@redhat.com>
2495
2496         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
2497         members to the end, so a libpthread compiled with !USE_TLS will still
2498         find other members properly.
2499
2500         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
2501         operand for DEST memory.  Fix dummy input operand to use SRC.
2502         Reported by Davin McCall <davmac@ozonline.com.au>.
2503
2504         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
2505         alignment when initializing the DTV entry.
2506
2507         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
2508         when TLS has not been set up, try to set it up if we can.
2509         * elf/tst-tls4.c: Revert last change.
2510         * elf/tst-tls5.c: Likewise.
2511         * elf/tst-tls6.c: Likewise.
2512         * elf/tst-tls7.c: Likewise.
2513         * elf/tst-tls8.c: Likewise.
2514         * elf/tst-tls9.c: Likewise.
2515
2516         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
2517         * sysdeps/generic/ldsodefs.h: Declare it.
2518         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
2519         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
2520         function, broken out of __libc_setup_tls.
2521         (init_static_tls): Likewise.
2522         (__libc_setup_tls): Call them.
2523         (_dl_tls_setup): New function, uses new subroutines.
2524
2525         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
2526         Clear the pointer when returning true.
2527         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
2528         first element of the slotinfo list too.
2529
2530         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
2531         [SHARED].
2532
2533         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
2534         (_dl_determine_tlsoffset): Likewise.
2535
2536         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
2537         startup_error_tsd, made global.
2538         (dl_main): Update initialization.
2539         * elf/dl-tsd.c: Likewise.
2540         * sysdeps/generic/ldsodefs.h: Declare it.
2541
2542 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2543
2544         * manual/texinfo.tex: Update from latest upstream version.
2545
2546 2002-12-03  Roland McGrath  <roland@redhat.com>
2547
2548         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
2549         area surplus in calculation for sbrk call.
2550
2551         * iconvdata/cp1125.c: New file.
2552         * iconvdata/Makefile (distribute): Add it.
2553         (modules): Add CP1125.
2554         (gen-8bit-gap-modules): Add cp1125.
2555         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
2556         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
2557
2558 2002-12-03  Andreas Jaeger  <aj@suse.de>
2559
2560         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
2561
2562 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2563
2564         * sysdeps/posix/system.c (do_system): Make signal handler
2565         installation thread safe.
2566
2567 2002-12-02  Roland McGrath  <roland@redhat.com>
2568
2569         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
2570         caller from EXTRA to -.
2571         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2572         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
2573         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2574
2575 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
2576
2577         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
2578         bits of RM are cleared.
2579
2580 2002-12-02  Roland McGrath  <roland@redhat.com>
2581
2582         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
2583         TLS setup is required.
2584         * elf/tst-tls5.c: Likewise.
2585         * elf/tst-tls6.c: Likewise.
2586         * elf/tst-tls7.c: Likewise.
2587         * elf/tst-tls8.c: Likewise.
2588         * elf/tst-tls9.c: Likewise.
2589
2590         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
2591         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
2592         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
2593         for being null before calling free_slotinfo.
2594         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
2595         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
2596
2597 2002-11-30  Bruno Haible  <bruno@clisp.org>
2598
2599         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
2600         (struct __gconv_step): New field __btowc_fct.
2601         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
2602         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
2603         __BUILTIN_TRANS.
2604         (__gconv_btwoc_ascii): New declaration.
2605         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2606         (__gconv_btwoc_ascii): New function.
2607         * iconv/gconv_builtin.h: Add BtowcFct argument to all
2608         BUILTIN_TRANSFORMATION invocations.
2609         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2610         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
2611         * iconv/gconv_builtin.c (map): New field btowc_fct.
2612         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
2613         btowc_fct field.
2614         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
2615         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
2616         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
2617         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
2618         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
2619         (gconv_init): Initialize __btowc_fct field.
2620         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
2621         * iconv/loop.c: Document ONEBYTE_BODY.
2622         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
2623         Undefine ONEBYTE_BODY at the end.
2624         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
2625         * iconvdata/8bit-gap.c (NONNUL): New macro.
2626         (BODY for FROM_LOOP): Use it.
2627         (ONEBYTE_BODY): New macro.
2628         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
2629         (NONNUL): New macro.
2630         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
2631         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
2632         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
2633         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
2634         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
2635         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
2636         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
2637         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
2638         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
2639         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
2640         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
2641         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
2642         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
2643         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
2644         * iconvdata/ibm932.c: Include <stdbool.h>.
2645         (TRUE, FALSE): Remove macros.
2646         (BODY for FROM_LOOP): Remove unused variable rp1.
2647         (ONEBYTE_BODY): New macro.
2648         (BODY for TO_LOOP): Use bool.
2649         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
2650         * iconvdata/ibm943.c: Include <stdbool.h>.
2651         (TRUE, FALSE): Remove macros.
2652         (BODY for FROM_LOOP): Remove unused variable rp1.
2653         (ONEBYTE_BODY): New macro.
2654         (BODY for TO_LOOP): Use bool.
2655         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
2656         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
2657         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
2658         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
2659         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
2660         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
2661         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
2662         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
2663         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
2664         * iconvdata/gbbig5.c: Tweak comment.
2665
2666 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
2667
2668         * po/fi.po: Update from translation team.
2669
2670 2002-12-01  Roland McGrath  <roland@redhat.com>
2671
2672         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
2673         testing getdents64 return value.
2674
2675         * scripts/versions.awk: Don't pass -n flag to sort command.
2676
2677         * posix/bug-regex13.c: Include <string.h>.
2678
2679         * sysdeps/generic/libc-start.c (__libc_start_main): Do
2680         DL_SYSDEP_OSCHECK here.
2681         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
2682         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
2683
2684         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
2685         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
2686
2687         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
2688         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
2689
2690         * include/link.h: Comment typo fix.
2691
2692 2002-12-01  Roland McGrath  <roland@frob.com>
2693
2694         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
2695         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
2696         _POSIX_MEMORY_PROTECTION): Likewise.
2697         (_POSIX_POLL, _POSIX_SELECT): Removed.
2698
2699 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2700
2701         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
2702         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
2703
2704 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
2705
2706         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
2707         USE___THREAD.
2708         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
2709         "=v" constraints.
2710
2711 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2712
2713         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
2714         branch prediction buffers by using unpaired call/ret.
2715
2716 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
2717
2718         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
2719         first parameters constraint string.
2720         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
2721
2722 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
2723
2724         * posix/regcomp.c (parse_expression): Set the bit since the back
2725         reference is used in the regular expression.
2726         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
2727         of malloc failure.
2728         (re_node_set_init_copy): Likewise.
2729         * posix/regex_internal.h (state_array_t): New structure.
2730         (re_sub_match_last_t): Likewise.
2731         (re_sub_match_top_t): Likewise.
2732         (re_match_context_t): Add new members.
2733         (re_dfa_t): Likewise.
2734         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
2735         to check the matching is really correct, and retry if failed.
2736         Move the routin pruning the impossible nodes from here, ...
2737         (prune_impossible_nodes): To this function.
2738         (check_matching): Invoke check_subexp_matching_top, and replace
2739         redundant checking with transit_state_bkref invocation.
2740         (proceed_next_node): Replace strncmp with memcmp.  Reported by
2741         Paolo Bonzini  <bonzini@gnu.org>.
2742         (update_cur_sifted_state): Remove search_subexp invocation.
2743         (search_subexp): Remove this function.
2744         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
2745         optimization.
2746         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
2747         Remove unused invocation of match_ctx_add_entry.
2748         (transit_state): Invoke check_subexp_matching_top.
2749         (check_subexp_matching_top): New function.
2750         (transit_state_bkref): Remove unused array.
2751         Merge transit_state_bkref_loop.
2752         (transit_state_bkref_loop): Use get_subexp instead of
2753         sift_states_backward.  Use search_cur_bkref_entry for optimization.
2754         Merge this function to transit_state_bkref.
2755         (get_subexp): New function.
2756         (get_subexp_sub): Likewise.
2757         (find_subexp_node): Likewise.
2758         (check_arrival): Likewise.
2759         (check_arrival_expand_ecl): Likewise.
2760         (check_arrival_expand_ecl_sub): Likewise.
2761         (expand_bkref_cache): Likewise.
2762         (match_ctx_init): Initialize new members.
2763         (match_ctx_clean): New function.
2764         (match_ctx_free): Release new members.
2765         (match_ctx_free_subtops): New function.
2766         (match_ctx_add_entry): Fix indent.
2767         (search_cur_bkref_entry): New function.
2768         (match_ctx_add_subtop): Likewise.
2769         (match_ctx_add_sublast): Likewise.
2770
2771 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
2772
2773         * iconv/Makefile (tests): Remove tst-iconv4.c
2774         * iconv/tst-iconv4.c: Moved to...
2775         * iconvdata/tst-iconv4.c: ...here.  New file.
2776         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
2777
2778 2002-11-25  Roland McGrath  <roland@redhat.com>
2779
2780         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
2781         Grok AF_LINK if defined.
2782         From Momchil Velikov <velco@fadata.bg>.
2783
2784         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
2785         brdaddr, or dstaddr, just set those pointers to null and don't fail.
2786         Reported by Momchil Velikov <velco@fadata.bg>.
2787
2788         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
2789         is > sizeof IFR->ifa_addr, advance past the whole longer length.
2790         (__ifreq): Count up NIFS that way too.
2791         Reported by Momchil Velikov <velco@fadata.bg>.
2792
2793         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
2794
2795         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
2796         and <fpu_control.h>.
2797
2798 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
2799
2800         * elf/elf.h (EM_ST19): Fix typo.
2801
2802 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
2803
2804         * include/errno.h (__set_errno): Define as errno = val
2805         unconditionally.
2806
2807 2002-11-24  Roland McGrath  <roland@redhat.com>
2808
2809         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
2810         * sysdeps/posix/writev.c: Likewise.
2811         From Momchil Velikov <velco@fadata.bg>.
2812
2813         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
2814         calling *GL(dl_error_catch_tsd) for a thread-local location.
2815         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
2816         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
2817         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
2818
2819         * libio/iofflush.c: Add libc_hidden_def.
2820         * libio/iofwrite.c: Likewise.
2821         * sysdeps/generic/sigtimedwait.c: Likewise.
2822         * sysdeps/generic/sigwaitinfo.c: Likewise.
2823         * sysdeps/posix/sigwait.c: Likewise.
2824         Reported by Momchil Velikov <velco@fadata.bg>.
2825
2826         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
2827         to match <arpa/inet.h> declaration.
2828         * inet/inet_netof.c (inet_netof): Likewise.
2829         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
2830         Reported by Momchil Velikov <velco@fadata.bg>.
2831
2832         * configure.in: Skip AUTOCONF check under --without-cvs.
2833         * configure: Regenerated.
2834
2835         * posix/Makefile (headers): Add bits/pthreadtypes.h.
2836         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
2837         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
2838
2839 2002-11-24  Andreas Schwab  <schwab@suse.de>
2840
2841         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
2842         with six arguments.
2843
2844 2002-11-19  Jim Meyering  <jim@meyering.net>
2845
2846         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
2847         as `static'.
2848         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
2849
2850 2002-11-23  Roland McGrath  <roland@redhat.com>
2851
2852         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
2853         Just produce hex output for datum sizes.
2854
2855         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
2856         Reported by Luca Barbieri <ldb@ldb.ods.org>.
2857
2858 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
2859
2860         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
2861         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2862         and __unused3 fields.
2863         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
2864         [__WORDSIZE == 32]: Only PPC32 requires __unused1
2865         and __unused2 fields.
2866         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
2867         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2868         __unused3, and __unused4 fields.
2869
2870         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
2871         obtain lowest address for profiling in __monstartup call.
2872
2873 2002-11-21  Roland McGrath  <roland@redhat.com>
2874
2875         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
2876         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
2877
2878         * locale/localeinfo.h (struct locale_data): Revert last change.
2879
2880         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
2881         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2882
2883         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
2884         __NR_pread64 if not defined.
2885         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
2886         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2887
2888 2002-11-21  Roland McGrath  <roland@frob.com>
2889
2890         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
2891         __libc_multiple_libcs here.  Call __setfpucw.
2892
2893 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
2894
2895         * elf/Makefile (tests): Don't run test-arrayX tests for now.
2896
2897         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
2898         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
2899         CLONE_CHILD_*TID flags.
2900
2901 2002-11-20  Andreas Jaeger  <aj@suse.de>
2902
2903         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
2904         We pass struct ucontext on x86-64.
2905         (GET_PC): Adjust.
2906         (GET_FRAME): Adjust.
2907         (GET_STACK): Adjust.
2908
2909 2002-11-20  Roland McGrath  <roland@redhat.com>
2910
2911         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
2912         conditionalize [! DO_VERSIONING] #error.
2913
2914         * scripts/abilist.awk: Grok function descriptor symbols.
2915
2916         * intl/tst-gettext.c (main): Check return values from setlocale.
2917         Add necessary unsetenv's to make LANG=existing-locale check work.
2918
2919         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
2920         so aborted prior runs don't confuse things.
2921
2922         * locale/localeinfo.h (struct locale_data: union locale_data_value):
2923         Use uintptr_t instead of unsigned int for `word' member.
2924         (_NL_CURRENT_WORD): Cast to uint32_t.
2925
2926         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
2927         value.
2928
2929 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
2930
2931         * elf/tls-macros.h: Add IA-64 definitions.
2932         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
2933
2934         * iconv/Makefile (tests): Add tst-iconv4.
2935         * iconv/tst-iconv4.c: New file.
2936
2937         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
2938         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
2939         __GCONV_INCOMPLETE_INPUT.
2940         (ucs4le_internal_loop): Likewise.
2941         (ucs4le_internal_loop_unaligned): Likewise.
2942         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
2943         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
2944         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
2945
2946         * iconv/loop.c (LOOPFCT): First test for empty input then for full
2947         output buffer.
2948
2949         * inet/getnameinfo.c: Use extend_alloca where appropriate.
2950         * sysdeps/posix/getaddrinfo.c: Likewise.
2951
2952         * include/alloca.h (extend_alloca): New define.  Based on stack
2953         direction it'll try to append to the previouls allocated buffer.
2954
2955 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
2956
2957         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
2958         use the same service for AF_INET and AF_INET6.
2959
2960 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2961
2962         * intl/localealias.c (read_alias_file): Use only about 400 bytes
2963         of stack space instead of 16k.
2964
2965 2002-11-18  Wolfram Gloger  <wg@malloc.de>
2966
2967         * malloc/arena.c
2968         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
2969         nothing if not initialized.  Bug report from Marcus Brinkmann
2970         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2971
2972 2002-11-19  Roland McGrath  <roland@redhat.com>
2973
2974         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
2975         sched_setaffinity.
2976
2977         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
2978         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
2979         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
2980         * configure: Regenerated.
2981
2982 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2983
2984         * include/dlfcn.h: __libc_dlopen is now a macro calling
2985         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
2986         (__libc_dlopen_mode): New prototype.
2987         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
2988         new parameter.  Store new parameter in mode field of structure passed
2989         to do_dlopen.
2990         (struct do_dlopen_args): Add new field mode.
2991         (do_dlopen): Pass mode from parameter structure to _dl_open.
2992
2993 2002-11-11  Randolf Chung  <tausq@debian.org>
2994
2995         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
2996         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
2997         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
2998
2999         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
3000
3001         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
3002         Set -mdisable-fpregs for this file.
3003
3004 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3005
3006         * sysdeps/unix/sysv/linux/configure.in:
3007         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
3008         from gcc-3.0 era for backwards compatibility.
3009         * sysdeps/unix/sysv/linux/configure: Regenerate.
3010
3011         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
3012         Define mcontext_t as a sigcontext.
3013
3014 2002-11-18  Roland McGrath  <roland@redhat.com>
3015
3016         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
3017         Free memory in `last_result' if it was used.
3018
3019         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
3020         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
3021         Do the parsing inline instead of copying strings and calling
3022         inet_network, and properly skip all alias names not matching the form.
3023
3024         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
3025
3026 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
3027
3028         * manual/pattern.texi (Wordexp Example): Fix sample code.
3029
3030         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
3031         childs stack which will be loaded into the %esi register.
3032
3033 2002-11-14  Paul Eggert  <eggert@twinsun.com>
3034
3035         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
3036         overflow when skipping the question part and when unpacking aliases.
3037
3038 2002-11-15  Roland McGrath  <roland@redhat.com>
3039
3040         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
3041         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
3042         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
3043
3044 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
3045
3046         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
3047         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
3048
3049 2002-11-15  Roland McGrath  <roland@redhat.com>
3050
3051         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
3052         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
3053         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
3054         (+make-include-of-dep): New canned sequence.
3055
3056         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
3057         From Dmitry V. Levin <ldv@altlinux.org>.
3058
3059 2002-11-14  Roland McGrath  <roland@redhat.com>
3060
3061         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
3062         * inet/herrno.c (__libc_h_errno): Likewise.
3063         * resolv/res_libc.c (__libc_res): Likewise.
3064         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
3065         (__res_state) [! USE___THREAD]: Don't define as weak.
3066         * csu/Versions: Revert last change.
3067         * resolv/Versions: Revert last change.
3068
3069         * Makerules ($(common-objpfx)%.make): New pattern rule.
3070         * tls.make.c: New file.
3071         * Makefile (distribute): Add it.
3072
3073         * sysdeps/generic/errno.c [! USE___THREAD]
3074         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
3075         with compat_symbol so they are not link-time visible.
3076         [! USE___THREAD] (__libc_errno): New alias for errno.
3077         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
3078         Add __libc_errno here.
3079         * inet/herrno.c [USE___THREAD]: Use this conditional
3080         in place of [USE_TLS && HAVE___THREAD].
3081         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
3082         (h_errno, _h_errno): Declare these with compat_symbol so they are not
3083         link-time visible.
3084         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
3085         * resolv/res_libc.c [! USE___THREAD]
3086         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
3087         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
3088         (__libc_res): Define as alias for _res.
3089         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
3090         Add __libc_h_errno and __libc_res here.
3091
3092 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
3093
3094         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
3095         * resolv/Versions (h_errno, _res): Likewise.
3096
3097 2002-11-14  Roland McGrath  <roland@redhat.com>
3098
3099         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
3100         (%.symlist): Likewise.
3101
3102 2002-11-13  Roland McGrath  <roland@redhat.com>
3103
3104         * scripts/abilist.awk: New file.
3105         * Makefile (distribute): Add it.
3106         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
3107         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
3108         [$(subdir) = elf] (tests): Depend on libc.symlist.
3109         (generated, common-generated): Add those files.
3110
3111         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
3112         * configure: Regenerated.
3113         * config.make.in (OBJDUMP): New variable, substituted by configure.
3114
3115         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
3116         (mallochook, reallochook): Set them up.
3117         (checkhdr): Check HDR->magic2 value.
3118         (freehook): Reset HDR->magic2.
3119         (memalignhook): New static function.
3120         (old_memalign_hook): New static variable.
3121         (mcheck, reallochook): Set __memalign_hook to memalignhook.
3122
3123         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
3124         for the new TCB.
3125
3126 2002-11-13  Andreas Jaeger  <aj@suse.de>
3127
3128         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
3129         attribute.
3130         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3131
3132 2002-11-11  Paul Eggert  <eggert@twinsun.com>
3133
3134         * manual/crypt.texi (Cryptographic Functions): Mention that
3135         the MD5 one-way algorithm is compatible with BSD's.
3136
3137 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
3138
3139         * posix/regex_internal.c (re_string_skip_chars): Also return the last
3140         wide character.
3141         (re_string_reconstruct): Calculate the context by itself when the
3142         offset points out of the valid range.
3143         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
3144         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
3145         (IS_WIDE_WORD_CHAR): New macro.
3146         (IS_WIDE_NEWLINE): New macro.
3147
3148 2002-11-12  Andreas Jaeger  <aj@suse.de>
3149
3150         * sysdeps/x86_64/strchr.S: Don't use one register for two
3151         purposes, this fixes a bug noticed by test-strchr.c.
3152
3153         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
3154         correctly.
3155
3156 2002-11-12  Roland McGrath  <roland@redhat.com>
3157
3158         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
3159         (_G_IO_NO_BACKWARD_COMPAT): Define it.
3160
3161         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
3162         instead of <pt-machine.h>.
3163         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
3164         testandset.
3165         From Ian Wienand <ianw@gelato.unsw.edu.au>.
3166
3167 2002-11-10  Roland McGrath  <roland@redhat.com>
3168
3169         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
3170         Call fputs instead of fwprintf (simpler to follow in debugger).
3171
3172         * crypt/md5-crypt.c: Doc fix.
3173
3174         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
3175         the beginning of generated target commands.
3176
3177         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
3178         dependencies for these in case implicit rule search skipped the
3179         nonexistent source directory.
3180         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
3181         files with $(object-suffixes) as targets too.
3182         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
3183         and a target for it using $(make-target-directory).
3184
3185         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
3186
3187 2002-11-10  Roland McGrath  <roland@frob.com>
3188
3189         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
3190         * sysdeps/generic/bits/pthreadtypes.h: ... here.
3191
3192         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
3193         l_start == 0 and l_len == 1 as we do l_len == 0.
3194
3195 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
3196
3197         * po/da.po: Update from translation team.
3198
3199 2002-11-10  Roland McGrath  <roland@redhat.com>
3200
3201         * config.make.in (includedir): New variable, substituted by configure.
3202         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
3203         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
3204
3205 2002-11-10  Andreas Jaeger  <aj@suse.de>
3206
3207         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
3208         REG_OLDMASK and REG_CR2 to synch with kernel header.
3209         (NGREG): Increase.
3210
3211         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
3212         aliasing problem.
3213         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
3214         * nss/getnssent_r.c (__nss_getent_r): Likewise.
3215         (__nss_setent): Likewise.
3216         (__nss_getent_r): Likewise.
3217         * inet/getnetgrent_r.c (innetgr): Likewise.
3218         (__internal_setnetgrent_reuse): Likewise.
3219         (internal_getnetgrent_r): Likewise.
3220         * inet/ether_hton.c (ether_hostton): Likewise.
3221         * inet/ether_ntoh.c (ether_ntohost): Likewise.
3222         * sunrpc/netname.c (netname2user): Likewise.
3223         * sunrpc/publickey.c (getpublickey): Likewise.
3224         (getsecretkey): Likewise.
3225
3226 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
3227
3228         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
3229         error in range calculation.
3230
3231 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
3232
3233         * string/test-strspn.c (do_test): Ensure zero termination.
3234         * string/test-strpbrk.c (do_test): Likewise.
3235         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
3236         * string/test-strncpy.c (stupid_strncpy): Likewise.
3237         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
3238
3239 2002-10-08  Roland McGrath  <roland@redhat.com>
3240
3241         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
3242         nonzero characters.
3243
3244 2002-09-22  H.J. Lu  <hjl@gnu.org>
3245
3246         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
3247         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
3248         only if __NR_mmap2 is defined.
3249
3250         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
3251         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
3252         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
3253         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
3254
3255 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
3256
3257         * posix/bug-regex13.c (tests): Add new test.
3258
3259         * string/test-strchr.c (stupid_strchr): New function.
3260         (do_random_tests): Make sure the string is zero terminated.
3261         * string/test-strpbrk.c (stupid_strpbrk): New function.
3262         (do_random_tests): Make sure the string is zero terminated.
3263         * string/test-strcmp.c (stupid_strcmp): New function.
3264         (do_random_tests): Make sure the strings are zero terminated.
3265         * string/test-strspn.c (stupid_strspn): New function.
3266         (simple_strspn): Rename rej argument to acc.
3267         (do_random_tests): Make sure the string is zero terminated.
3268         * string/test-strcspn.c (stupid_strcspn): New function.
3269         * string/test-strncpy.c (stupid_strncpy): New function.
3270         * string/test-stpncpy.c (stupid_stpncpy): New function.
3271         * string/test-strncmp.c (stupid_strncmp): New function.
3272         (do_random_tests): Make sure the strings are zero terminated.
3273         * string/test-string.h (impl_t): Change test into long.
3274         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
3275
3276 2002-11-08  Roland McGrath  <roland@redhat.com>
3277
3278         * sysdeps/ia64/elf/configure.in: Add TLS check.
3279         From Ian Wienand <ianw@cse.unsw.edu.au>.
3280         * sysdeps/ia64/elf/configure: Regenerated.
3281
3282 2002-11-07  Roland McGrath  <roland@redhat.com>
3283
3284         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
3285         place of _IO_new_do_write.
3286         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
3287         #undef before versioned_symbol use.
3288
3289 2002-11-07  Richard Henderson  <rth@redhat.com>
3290
3291         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
3292         * configure: Regenerated.
3293         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
3294         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
3295         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
3296         _dl_fini via gp-relative relocations.
3297         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
3298
3299         * elf/tls-macros.h: Add alpha versions.
3300         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
3301         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
3302         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
3303         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
3304         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
3305         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
3306         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
3307         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
3308         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
3309         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3310         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
3311         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
3312         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
3313         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
3314         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
3315         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
3316         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
3317         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
3318
3319         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
3320         Kill argument registers across the inline syscall.
3321
3322         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
3323
3324         * linuxthreads/sysdeps/alpha/tls.h: New file.
3325         * sysdeps/alpha/dl-tls.h: New file.
3326
3327 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
3328
3329         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
3330         (gmon_initializer): New function.
3331         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
3332         __gmon_start__ here.  Call it from gmon_initializer() instead.
3333
3334 2002-03-12  H.J. Lu  <hjl@gnu.org>
3335
3336         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
3337         tst-array2, and tst-array3.
3338         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
3339         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
3340         ($(objpfx)tst-array1.out): New target.
3341         ($(objpfx)tst-array2): Likewise.
3342         ($(objpfx)tst-array2.out): Likewise.
3343         ($(objpfx)tst-array3.out): Likewise.
3344         * elf/tst-array1.c: New file.
3345         * elf/tst-array1.exp: Likewise.
3346         * elf/tst-array2.c: Likewise.
3347         * elf/tst-array2dep.c: Likewise.
3348         * elf/tst-array2.exp: Likewise.
3349         * elf/tst-array3.c: Likewise.
3350
3351 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
3352
3353         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
3354         Don't add L->l_addr to array entry values.
3355
3356 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
3357
3358         * string/test-string.h: New file.
3359         * string/test-strlen.c: New file.
3360         * string/test-string.h: New file.
3361         * string/test-strcmp.c: New file.
3362         * string/test-strchr.c: New file.
3363         * string/test-strrchr.c: New file.
3364         * string/test-strcpy.c: New file.
3365         * string/test-stpcpy.c: New file.
3366         * string/test-strncpy.c: New file.
3367         * string/test-stpncpy.c: New file.
3368         * string/test-strpbrk.c: New file.
3369         * string/test-strcspn.c: New file.
3370         * string/test-strspn.c: New file.
3371         * string/test-strcat.c: New file.
3372         * string/test-strncmp.c: New file.
3373         * string/test-memchr.c: New file.
3374         * string/test-memcmp.c: New file.
3375         * string/test-memset.c: New file.
3376         * string/test-memcpy.c: New file.
3377         * string/test-mempcpy.c: New file.
3378         * string/test-memmove.c: New file.
3379         * string/Makefile (strop-tests): New variable.
3380         (tests): Add strop-tests.
3381         (distribute): Add test-string.h.
3382
3383 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
3384
3385         * posix/regcomp.c: Use tabs instead of spaces.
3386         * posix/regexec.c: Likewise.
3387         * posix/regex_internal.h: Likewise.
3388
3389         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
3390
3391 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
3392
3393         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
3394         here.
3395         (regcomp): Don't set can_be_null here.
3396         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
3397         (re_compile_internal): Clear can_be_null, set regs_allocated.
3398
3399         * posix/regcomp.c (re_set_fastmap): New function.
3400         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
3401         COMPLEX_BRACKET check.
3402         * posix/regexec.c (re_search_internal): Optimize searching with
3403         fastmap.  Call re_string_reconstruct even if match_first is
3404         smaller than raw_mbs_idx.
3405
3406 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
3407
3408         * posix/regcomp (free_dfa_content): Use free_state.
3409         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
3410         pointers in case that realloc failed.
3411         (re_node_set_merge): Likewise.
3412         (register_state): Likewise.
3413         (create_newstate_common): Invoke memory release functions in case of
3414         error conditions.
3415         (create_ci_newstate): Likewise.
3416         (create_cd_newstate): Likewise.
3417         (free_state): New function.
3418         * posix/regexec.c (re_search_internal): Invoke memory release
3419         functions in case of error conditions.
3420         (sift_states_backward): Likewise.
3421         (merge_state_array): Likewise.
3422         (add_epsilon_src_nodes): Likewise.
3423         (sub_epsilon_src_nodes): Likewise.
3424         (search_subexp): Likewise.
3425         (sift_states_bkref): Likewise.
3426         (transit_state_sb): Likewise.
3427         (transit_state_mb): Likewise.
3428         (transit_state_bkref_loop): Likewise.
3429         (group_nodes_into_DFAstates): Likewise.
3430         (push_fail_stack): Don't edit pointers in case that realloc failed.
3431         (extend_buffers): Likewise.
3432         (match_ctx_add_entry): Likewise.
3433
3434 2002-11-06  Roland McGrath  <roland@redhat.com>
3435
3436         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
3437         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
3438
3439         * configure.in: Add checks on as and ld for binutils 2.13 or later.
3440         * configure: Regenerated.
3441
3442 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
3443
3444         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
3445         If re_compile_internal failed free fastmap buffer.
3446         (free_dfa_content): Broken out of regfree function.  Frees all dfa
3447         related data.
3448         (regfree): Add free_dfa_content.
3449         (re_compile_internal): If any of the called functions fails free
3450         all dfa related memory.
3451
3452 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3453
3454         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
3455         warnings from the kernel headers.
3456
3457 2002-11-05  Roland McGrath  <roland@redhat.com>
3458
3459         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
3460         From Johannes Stezenbach <js@convergence.de>.
3461
3462         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
3463         #errlist-compat magic comment to give 123 as size.
3464         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
3465         (libc: GLIBC_2.2): ... here.
3466         (libc: GLIBC_2.3): Likewise.
3467
3468 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3469
3470         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
3471         which happens at the beginning so that we can unload modules in
3472         __libc_freeres.
3473
3474 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3475
3476         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
3477         under [__USE_MISC || _ASM].
3478
3479         * elf/elf.h: Remove the obsolete SH TLS relocations.
3480
3481 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3482
3483         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
3484
3485 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3486
3487         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
3488         __NR_pread64 and __NR_pwrite64.
3489         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3490         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
3491         and __NR_pwrite64.
3492         Revert change to use INLINE_SYSCALL.
3493         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3494         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3495         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3496         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
3497         INLINE_SYSCALL.
3498         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3499
3500         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
3501         Update clobber list and add a comment about the syscall ABI.
3502
3503         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
3504         s_pwrite64, s_ftruncate, s_truncate): Re-add.
3505
3506 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
3507
3508         * iconv/gconv_dl.c (free_mem): Clear loaded.
3509         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
3510         cleanup if any.
3511
3512 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3513
3514         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
3515
3516         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
3517         as old code without locking.  _IO_seekoff calls this function after
3518         locking the stream.
3519         * libio/ioseekpos.c: Likewise for _IO_seekpos.
3520         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
3521         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
3522         prototypes.
3523         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
3524         of _IO_seekoff_internal.
3525         (_IO_rewind): Likewise.
3526         * libio/ioftell.c: Likewise.
3527         * libio/ftello.c: Likewise.
3528         * libio/ftello64.c: Likewise.
3529         * libio/iofgetpos.c: Likewise.
3530         * libio/iofgetpos64.c: Likewise.
3531         * libio/oldiofgetpos.c: Likewise.
3532         * libio/oldiofgetpos64.c: Likewise.
3533         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of