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