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