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