* Versions.def (libm): Add GLIBC_2.3.3.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2004-01-13  Richard Henderson  <rth@redhat.com>
2
3         * Versions.def (libm): Add GLIBC_2.3.3.
4         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
5         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
6         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
7         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
8         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
9         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
10         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
11         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
12         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
13         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
14         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
15         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
16         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
17         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
18         functions for gcc 3.3.
19
20         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
21         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
22         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
23         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
24         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
25         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
26         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
27         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
28         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
29         weak_alias if the function name has been #defined.
30
31         * math/cabsf.c: Move ...
32         * sysdeps/generic/cabsf.c: ... here.
33         * math/cargf.c: Move ...
34         * sysdeps/generic/cargf.c: ... here.
35         * math/cimagf.c: Move ...
36         * sysdeps/generic/cimagf.c: ... here.
37         * math/conjf.c: Move ...
38         * sysdeps/generic/conjf.c: ... here.
39         * math/crealf.c: Move ...
40         * sysdeps/generic/crealf.c: ... here.
41
42 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
43
44         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
45         LDFLAGS.so and LDFLAGS-rtld.
46         (+link): Add relro-LDFLAGS.
47         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
48         __libc_thread_subfreeres sections after .jcr section.
49         * config.make.in: Add have-z-relro.
50         * configure.in: Add check for -z relro option.
51         * include/link.h (struct link_map): Add relro_addr and relro_size
52         members.
53         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
54         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
55         part of loaded segments read-only.
56         * elf/elf.h: Define PT_GNU_RELRO.
57         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
58         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
59         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
60         relocations.
61
62 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
63
64         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
65
66 2004-01-11  Andreas Jaeger  <aj@suse.de>
67
68         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
69
70 2004-01-10  Andreas Jaeger  <aj@suse.de>
71
72         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
73         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
74         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
75         * sysdeps/x86_64/strcspn.S: Likewise.
76         * sysdeps/x86_64/strspn.S: Likewise.
77
78 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
79
80         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
81         right before syscall and cfi_startproc before PSEUDO_END.
82         Clear %rbp in thread_start.
83
84 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
85
86         * posix/regcomp.c (regcomp): Fix comment typo.
87         (regfree): Free preg->translate, clear buffer, allocated, fastmap
88         and translate fields.
89
90         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
91         argument to unsigned RE_TRANSLATE_TYPE.
92         * posix/regex_internal.h (re_string_t): Change trans type to
93         unsigned RE_TRANSLATE_TYPE.
94         * posix/regex_internal.c (re_string_construct_common): Cast
95         trans to unsigned RE_TRANSLATE_TYPE.
96         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
97         path if pstr->trans.  Never translate the character through
98         pstr->trans.
99         * posix/Makefile (tests): Add bug-regex22.
100         (bug-regex22-ENV): Set.
101         * posix/bug-regex22.c: New test.
102
103 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
104
105         * posix/regex_internal.c (re_node_set_add_intersect,
106         re_node_set_merge): Rewritten.
107         (re_node_set_insert, re_node_set_remove_at):
108         Avoid memmove, we know what direction we should copy and that we
109         are copying 32-bit words.
110         (re_node_set_compare): Iterate backwards.
111
112 2003-12-30  Paul Eggert  <eggert@twinsun.com>
113
114         * time/mktime.c (verify): New macro.
115         (time_t_is_integer, twos_complement_arithmetic,
116         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
117         C99_integer_division): Document these longstanding assumptions in the
118         code, and verify them at compile-time.
119
120 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
121
122         * posix/regex_internal.h (re_match_context_t): Add dfa member.
123         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
124         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
125         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
126         sift_states_backward, update_cur_sifted_state, check_dst_limits,
127         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
128         check_subexp_matching_top, transit_state_sb, transit_state_mb,
129         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
130         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
131         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
132         (re_search_internal): Initialize mctx.dfa.
133
134         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
135
136         * posix/regex_internal.h (re_dfa_t): Add syntax field.
137         * posix/regcomp.c (parse): Initialize dfa->syntax.
138         * posix/regexec.c (acquire_init_state_context,
139         prune_impossible_nodes, check_matching, check_halt_state_context,
140         proceed_next_node, sift_states_iter_mb, sift_states_backward,
141         update_cur_sifted_state, sift_states_bkref, transit_state,
142         transit_state_sb, transit_state_mb, transit_state_bkref,
143         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
144         build_trtable): Remove preg argument, add dfa argument instead
145         and remove dfa = preg->buffer initialization in the body.
146         Adjust all callers.
147         (check_node_accept_bytes, group_nodes_into_DFAstates,
148         check_node_accept): Likewise.  Use dfa->syntax instead of
149         preg->syntax.
150         (check_arrival_add_next_nodes): Remove preg argument.
151
152         * posix/regex_internal.h (re_match_context_t): Make input
153         re_string_t instead of a pointer to it.
154         * posix/regex_internal.c (re_string_construct_common): Don't clear
155         pstr here...
156         (re_string_construct): ... but only here.
157         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
158         initialize fields to zero.
159         (re_search_internal): Move input into mctx.input.
160         (acquire_init_state_context, check_matching,
161         check_halt_state_context, proceed_next_node,
162         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
163         transit_state, transit_state_sb, transit_state_mb,
164         transit_state_bkref, get_subexp, check_arrival,
165         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
166         Change mctx->input into &mctx->input and mctx->input->field into
167         mctx->input.field.
168
169 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
170             Paolo Bonzini  <bonzini@gnu.org>
171
172         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
173         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
174         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
175         (re_string_context_at, re_string_reconstruct): Remove last argument.
176         * posix/regex_internal.c (re_string_allocate): Initialize
177         pstr->word_char and pstr->word_ops_used.
178         (re_string_context_at): Remove newline_anchor argument.
179         Use input->newline_anchor instead, swap && conditions.
180         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
181         Use input->word_char bitmap instead of IS_WORD_CHAR.
182         (re_string_reconstruct): Likewise.
183         Adjust re_string_context_at caller.
184         * posix/regexec.c (acquire_init_state_context,
185         check_halt_state_context, transit_state, transit_state_sb,
186         transit_state_mb, transit_state_bkref, check_arrival,
187         check_node_accept): Adjust re_string_context_at and
188         re_string_reconstruct callers.
189         (re_search_internal): Likewise.  Set input.newline_anchor.
190         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
191         * posix/regcomp.c (init_word_char): Change return type to void.
192         Set dfa->word_ops_used.
193         (free_dfa_content): Don't free dfa->word_char.
194         (parse_expression): Remove error handling for init_word_char.
195
196 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
197
198         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
199         bitfield.
200
201         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
202
203 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
204
205         * posix/getconf.c: Update copyright year.
206         * nss/getent.c: Likewise.
207         * nscd/nscd_nischeck.c: Likewise.
208         * iconv/iconvconfig.c: Likewise.
209         * iconv/iconv_prog.c: Likewise.
210         * elf/ldconfig.c: Likewise.
211         * catgets/gencat.c: Likewise.
212         * csu/version.c: Likewise.
213         * elf/ldd.bash.in: Likewise.
214         * elf/sprof.c (print_version): Likewise.
215         * locale/programs/locale.c: Likewise.
216         * locale/programs/localedef.c: Likewise.
217         * nscd/nscd.c (print_version): Likewise.
218         * debug/xtrace.sh: Likewise.
219         * malloc/memusage.sh: Likewise.
220         * malloc/mtrace.pl: Likewise.
221
222 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
223
224         * stdlib/strfmon.c: Make formatting of left-justified currency
225         values match the the POSIX standard.  When using format string
226         "[%-14#5.4n]" to print -123.45, the result should be
227         "[-$   123.4500 ]", not "[-$123.4500    ]".
228
229 2004-01-01  Andreas Jaeger  <aj@suse.de>
230
231         * resolv/Makefile (generated): New.
232
233 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
234
235         * CONFORMANCE: Update.
236
237 2003-12-30  Paul Eggert  <eggert@twinsun.com>
238
239         * time/mktime.c: (my_mktime_localtime_r):
240         Remove.  All uses changed to __localtime_r.
241         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
242         get its implementation.
243         Fix compile-command to allow for TIME_R_POSIX.
244
245         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
246         Remove.  All uses changed to __localtime_r and __gmtime_r.
247         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
248         Include "time_r.h" to get their implementations.
249
250         * time/timegm.c: Allow use in GNU applications outside glibc.
251         [defined HAVE_CONFIG_H]: Include <config.h>.
252         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
253         Define __gmtime_r, and declare __mktime_internal.
254         (timegm): Define via a prototype, since we can safely assume C89 now.
255
256         * time/mktime.c (check_result): Use less-confusing report format.
257         "long" -> "long int", as per usual GNU style.
258         (main): Likewise.
259         Don't loop if the iteration overflows time_t.
260         Allow a negative step in the iteration.
261
262         * time/mktime.c: Assume freestanding C89 or better.
263         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
264         assume they're 1.
265         (__P): Remove; not used.
266         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
267         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
268         Prototypes use const * where appropriate.
269         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
270         which caused the testing code to dump core on some hosts.
271
272 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
273
274         * locale/setlocale.c (setlocale): Avoid duplicating locale names
275         if we can reuse old strings.
276
277         * inet/rcmd.c: Provide better error message in case of unknown
278         host.  Remove USE_IN_LIBIO.
279
280         * nscd/nscd.init: Updated version, more conforming with current
281         init file standards.
282
283         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
284         /var/run/nscd directory.
285         (_PATH_NSCDSOCKET): Likewise.
286
287         * test-skeleton.c (timeout_handler): Fix error message.
288
289         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
290         CNT == 0.
291
292 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
293
294         * posix/regexec.c (get_subexp): Only set bkref_str after the first
295         loop, use buf + bkref_str_off in the loop instead.
296         * posix/bug-regex11.c (tests): Add 3 new tests.
297
298         * posix/regexec.c (clean_state_log_if_need): Rename to...
299         (clean_state_log_if_needed): ...this.
300         (transit_state_mb, get_subexp_sub): Adjust callers.
301
302         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
303         failed.  Reported by Steve Grubb.
304
305 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
306
307         * elf/elf.h: Add a few definitions from Solaris 9.
308
309 2003-12-29  Andreas Schwab  <schwab@suse.de>
310
311         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
312         $(fno_unit_at_a_time) to avoid reordering assembler output.
313
314 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
315
316         * posix/regexec.c (re_copy_regs): Revert comment change.
317         Avoid memory leak if realloc fails.
318         (proceed_next_node): Return -2 if re_node_set_insert fails.
319         Return -2 if push_fail_stack fails.
320         (push_fail_stack): Change fs->alloc only after successful realloc.
321         (pop_fail_stack): Formatting.
322         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
323         (check_arrival_add_next_nodes): Merge identical statements
324         from if branches.
325
326         * signal/Makefile (tests): Add tst-raise.
327         * signal/tst-raise.c: New test.
328
329 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
330
331         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
332
333         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
334         (push_fail_stack): Add missing check for failed memory allocation.
335
336         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
337         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
338         _IO_putwc_unlocked.
339
340 2003-12-28  Andreas Jaeger  <aj@suse.de>
341
342         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
343         overflow for 0 as argument. Raise Invalid exception for negative args.
344         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
345         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
346         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
347         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
348         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
349         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
350         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
351         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
352         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
353         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
354         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
355
356         * math/libm-test.inc (yn_test): Expect invalid exception for
357         negative arguments.
358         (y0_test): Likewise.
359         (y1_test): Likewise.
360
361         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
362         execptions for exp(NaN).
363
364 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
365
366         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
367         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
368         among the tokens, rather than among the epsilon-transiting nodes.
369         (re_token_t): Add the opt_subexp flag.
370         * posix/regcomp.c (optimize_utf8, calc_first,
371         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
372         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
373         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
374         OP_DUP_ASTERISK and marking optional subexpressions
375         as such using mark_opt_subexp.
376         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
377         and pass it to update_regs.
378         (update_regs): Use the PREV_INDEX_MATCH parameter, together
379         with the opt_subexp flag, in order to discard a final empty
380         match of a repeated subexpression.
381         * posix/BOOST.tests: Adjust test vectors.
382         * posix/PCRE.tests: Likewise.
383         * posix/rxspencer/tests: Likewise.
384
385 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
386
387         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
388         with omitted middle operand.
389
390 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
391
392         * posix/regcomp.c: Remove C99-ism.
393         * posix/tst-rxspencer.c: Likewise.
394         Based on a patch by Alex Davis <alex14641@yahoo.com>.
395
396 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
397
398         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
399         (re_string_allocate, re_string_construct, re_string_reconstruct,
400         re_string_realloc_buffers, build_wcs_buffer,
401         build_wcs_upper_buffer, build_upper_buffer,
402         re_string_translate_buffer, re_string_destruct,
403         re_string_elem_size_at, re_string_char_size_at,
404         re_string_wchar_at, re_string_context_at,
405         re_node_set_alloc, re_node_set_init_1
406         re_node_set_init_2, re_node_set_init_copy,
407         re_node_set_add_intersect, re_node_set_init_union,
408         re_node_set_merge, re_node_set_insert
409         re_node_set_compare, re_node_set_contains
410         re_node_set_remove_at, re_dfa_add_node,
411         re_acquire_state, re_acquire_state_context,
412         free_state): Add internal_function to declaration.
413
414         * posix/regexec.c (match_ctx_init, match_ctx_clean,
415         match_ctx_free, match_ctx_free_subtops,
416         match_ctx_add_entry, search_cur_bkref_entry,
417         match_ctx_clear_flag, match_ctx_add_subtop,
418         match_ctx_add_sublast, sift_ctx_init,
419         re_search_internal, re_search_2_stub, re_search_stub,
420         re_copy_regs, acquire_init_state_context,
421         prune_impossible_nodes, check_matching,
422         check_halt_node_context, check_halt_state_context
423         update_regs, proceed_next_node, push_fail_stack,
424         pop_fail_stack, set_regs, free_fail_stack_return,
425         sift_states_iter_mb, sift_states_backward
426         update_cur_sifted_state, add_epsilon_src_nodes,
427         sub_epsilon_src_nodes, check_dst_limits,
428         check_dst_limits_calc_pos, check_subexp_limits,
429         sift_states_bkref, clean_state_log_if_need,
430         merge_state_array, transit_state,
431         check_subexp_matching_top, transit_state_sb,
432         transit_state_mb, transit_state_bkref,
433         get_subexp, get_subexp_sub, find_subexp_node,
434         check_arrival, check_arrival_add_next_nodes,
435         find_collation_sequence_value, check_arrival_expand_ecl,
436         check_arrival_expand_ecl_sub, expand_bkref_cache,
437         build_trtable, check_node_accept_bytes, extend_buffers,
438         group_nodes_into_DFAstates, check_node_accept): Likewise.
439
440         * posix/regex_internal.c (re_string_construct_common,
441         re_string_skip_chars, create_newstate_common,
442         register_state, create_ci_newstate, create_cd_newstate,
443         calc_state_hash): Likewise.
444         (re_string_peek_byte_case, re_fetch_byte_case): Change
445         declaration from ANSI to K&R.
446
447 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
448
449         * posix/regexec.c (build_trtable): Don't allocate the trtable
450         until state->word_trtable is known.  Don't hardcode UINT_BITS
451         iterations on each bitset item.
452
453 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
454
455         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
456         Initialize REF before passing it to _dl_lookup_symbol.
457
458 2003-12-21  Roland McGrath  <roland@frob.com>
459
460         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
461
462 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
463
464         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
465         2003-11-24 changes.
466         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
467         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
468         * posix/bug-regex19.c (tests): Add new tests.
469
470         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
471
472         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
473         after checking syntax.  Optimize.
474         (calc_first): Fix comment.
475         * posix/bug-regex13.c (tests): Add new tests.
476
477 2003-12-21  Roland McGrath  <roland@redhat.com>
478
479         * manual/arith.texi (Parsing of Integers): Typo fix.
480
481 2003-12-20  Roland McGrath  <roland@frob.com>
482
483         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
484         add missing dereference of IFREQS before counting loop.
485
486 2003-12-21  Andreas Schwab  <schwab@suse.de>
487
488         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
489         constraints.
490
491 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
492
493         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
494
495 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
496
497         * stdio-common/printf_fp.c: Add support to use alternative decimal
498         digits.
499         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
500         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
501
502 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
503
504         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
505         reload PIC if we need to call __syscall_error, cleanup asm.
506
507 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
508
509         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
510         FE_ALL_EXCEPT before complimenting.
511         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
512         and gcc '+r' constraint.
513         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
514         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
515         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
516         exception bits, OR with envp, pass to fesetenv.
517         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
518         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
519         triggered by M_PI/69.69 converted to single precision.
520         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
521         bits not raised exception bits.
522
523         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
524         correct build strings.
525         * sysdeps/hppa/dl-fptr.h: New file.
526         * sysdeps/hppa/dl-fptr.c: Removed.
527         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
528         remove const qualifier for map.
529         (_dl_function_address): Removed.
530         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
531         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
532         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
533         DL_DT_FINI_ADDRESS use the previous two macros.
534
535 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
536
537         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
538         (tr_memalignhook): New function.
539         (mtrace): Register tr_memalignhook.
540         (muntrace): Deregister tr_memalignhook.
541         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
542         call it directly instead of memalign_internal.
543
544 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
545
546         * misc/mntent_r.c: Change encoding to match recently changed decoder.
547         Patch by Alexander Achenbach <xela@slit.de>.
548
549 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
550
551         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
552         vrregset_t.
553
554 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
555
556         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
557         conditional to include typedef elf_vrreg_t.
558
559 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
560
561         * posix/regexec.c (re_search_internal): Limit search to the
562         beginning of the buffer if the initial states are empty for
563         contexts that do not include CONTEXT_BEGBUF or, if
564         !preg->newline_anchor, that do not include any one of
565         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
566
567 2003-12-17  Andreas Jaeger  <aj@suse.de>
568
569         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
570         Kevin Pedretti <pedretti@ieee.org>.
571
572 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
573
574         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
575         removes the visibility attributes which might be defined earlier
576         for some gcc versions.  Instead spell out what strong_alias does
577         plus the visibility.
578
579 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
580
581         * posix/regex_internal.h: Make sure the regex code compile
582         with non-GCC compilers by hiding attributes.
583
584 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
585             Paolo Bonzini  <bonzini@gnu.org>
586
587         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
588         dests_ch items that are empty.
589
590 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
591
592         * posix/regexec.c (check_arrival): Remove duplicate test.
593
594 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
595
596         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
597         * posix/regex_internal.c: Likewise.
598         * posix/regexec.c: Likewise.
599         Patch by Paolo Bonzini.
600
601 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
602
603         * posix/regex_internal.c (re_acquire_state_context):
604         Compare the node sets after all the other comparisons.
605
606 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
607
608         * posix/regexec.c (find_subexp_node, check_arrival,
609         check_arrival_add_next_nodes, check_arrival_expand_ecl,
610         check_arrival_expand_ecl_sub, expand_bkref_cache):
611         Rename the FL_OPEN parameter to TYPE, which is either
612         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
613
614 2003-12-12  Andreas Jaeger  <aj@suse.de>
615
616         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
617         to syscall.
618
619 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
620
621         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
622         There might always be processes which have no vDSO.
623         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
624         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
625
626 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
627
628         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
629         in the right order.
630
631 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
632
633         * rt/tst-clock.c (do_test): Print message when skipping
634         CLOCK_PROCESS_CPUTIME_ID test.
635
636         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
637         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
638
639 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
640
641         * sysdeps/ia64/elf/initfini.c: Add unwind info.
642
643         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
644         attribute "unused".
645         (elf_machine_dynamic): Mark with attributes "unused" and "const".
646         (elf_machine_runtime_setup): Likewise.
647
648         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
649         attribute "always_inline".
650         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
651         Likewise.
652
653         * configure.in: Check whether compiler has libunwind support.
654         * config.make.in (have-cc-with-libunwind): New variable.
655         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
656         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
657         mention -lunwind.
658
659 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
660
661         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
662         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
663         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
664         DO_INLINE_SYSCALL.
665
666         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
667         instead of DO_CALL().
668
669         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
670         of DO_CALL().
671
672         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
673         to take advantage of DO_CALL() macro.
674         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
675         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
676
677         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
678         program header.  On ia64, the check failed previously because
679         there are two program headers.
680
681 2003-12-10  Andreas Jaeger  <aj@suse.de>
682             Ruediger Oertel  <ro@suse.de>
683
684         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
685
686 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
687
688         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
689         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
690         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
691         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
692         * sysdeps/generic/s_nexttowardf.c: Likewise.
693         * math/Makefile (tests): Add bug-nexttoward.
694         * math/bug-nexttoward.c: New file.
695
696         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
697         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
698         * math/bug-nextafter.c (main): Add tests for overflow and negative
699         values.
700
701 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
702
703         * math/Makefile (tests): Add bug-nextafter.
704         * math/bug-nextafter.c: New file.
705         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
706         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
707         * math/libm-test.inc (nextafter_test): Add test for overflow after
708         +/-FLT_MAX etc.
709
710 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
711
712         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
713         of fenv.
714         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
715
716 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
717
718         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
719         statements.
720         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
721         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
722         (END): Add cfi_endproc directive.
723         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
724         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
725         cfi_startproc and cfi_endproc directive.
726         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
727         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
728         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
729         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
730         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
731         Likewise.
732         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
733         Likewise.
734         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
735         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
736         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
737         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
738         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
739         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
740         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
741         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
742         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
743         Likewise.
744         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
745         Likewise.
746         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
747         directives. Move thread_start out of ENTRY/PSEUDO_END block to
748         make backchain terminate.
749         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
750
751         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
752         (unwind_backtrace, unwind_getip): New variables.
753         (init, __backchain_backtrace, backtrace_helper): New functions.
754         (__backtrace): Use unwind info for backtrace instead of backchain
755         walking if the unwind functions can be found.
756         * sysdeps/s390/s390-64/backtrace.c: Likewise.
757
758         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
759
760         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
761         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
762         (elf_prstatus32, elf_prpsinfo32): New structures.
763         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
764
765         * scripts/data/c++-types-s390-linux-gnu.data: New file.
766         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
767
768 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
769
770         * stdlib/strfmon.c: Correct formatting of international currency
771         values.  The international currency formatting should prefer the
772         int_* values if they are set for a locale, and use the domestic
773         values if the int_* values are unset.
774
775 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
776
777         * posix/Makefile (distribute): Add BOOST.tests.
778         (tests): Add tst-boost, depend on tst-boost-mem.
779         (generated): Add tst-boost-mem and tst-boost.mtrace.
780         (tst-boost-ARGS, tst-boost-ENV): Set.
781         ($(objpfx)tst-boost-mem): New.
782         * posix/tst-boost.c: New test.
783         * posix/BOOST.tests: New file.
784
785         * posix/Makefile (distribute): Add PCRE.tests.
786         (tests): Add tst-pcre, depend on tst-pcre-mem.
787         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
788         (tst-pcre-ARGS, tst-pcre-ENV): Set.
789         ($(objpfx)tst-pcre-mem): New.
790         * posix/tst-pcre.c: New test.
791         * posix/PCRE.tests: New file.
792
793 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
794
795         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
796
797         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
798         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
799
800 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
801
802         * locale/programs/locarchive.c (enlarge_archive): Print size info
803         only in verbose mode.
804
805         * locale/iso-3166.def: Three letter code of Romania changed.
806
807 2003-12-02  Roland McGrath  <roland@redhat.com>
808
809         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
810         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
811
812 2003-11-30  Andreas Jaeger  <aj@suse.de>
813
814         * config.make.in (fno-unit-at-a-time): Define.
815
816         * configure.in: Add test for -fno-unit-at-a-time.
817         Fix text for -fpie.
818
819         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
820         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
821
822 2003-12-01  Automatic
823
824         * version.h (VERSION): Bump to 2.3.3.
825
826 2003-11-30  Andreas Jaeger  <aj@suse.de>
827
828         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
829         decrease stack usage.
830
831 2003-11-30  Andreas Schwab  <schwab@suse.de>
832
833         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
834         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
835
836 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
837
838         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
839         recognize \134 as well.
840
841 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
842
843         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
844
845 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
846
847         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
848         <asm/fpu.h>.
849         (struct ia64_fpreg): New definition.
850
851         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
852         <asm/elf.h>.
853         (ELF_NGREG): New #define.
854         (ELF_NFPREG): Likewise.
855         (elf_greg_t): New type.
856         (elf_gregset_t): Likewise.
857         (elf_fpreg_t): Likewise.
858         (elf_fpregset_t): Likewise.
859
860 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
861
862         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
863         <sys/ucontext.h>.
864         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
865         (pt_all_user_regs): New type.
866
867 2003-10-10  Simon Josefsson  <jas@extundo.com>
868
869         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
870         strchrnul.h, strndup.h (from gnulib).
871         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
872         Autoconf manual.
873         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
874         Autoconf manual version.
875         * argp/argp.h: Map __restrict to restrict or empty string when
876         necessary, copied verbatim from posix/regex.h.
877
878 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
879
880         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
881         addition to c++-types-$(base-machine)-$(config-os).data.
882         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
883         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
884
885 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
886
887         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
888         of newline.
889         * manual/sysinfo.texi (mtab): Adjust description accordingly.
890         Reported by Andries.Brouwer@cwi.nl.
891
892         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
893         to compensate other setup.
894
895 2003-11-27  Andreas Jaeger  <aj@suse.de>
896
897         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
898
899         * math/libm-test.inc (atan2_test): Add test that run infinitly.
900         Reported by "Willus" <etc231etc231@willus.com>.
901
902 2003-11-27  Michael Matz  <matz@suse.de>
903
904         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
905         with wrong types.
906
907 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
908
909         * posix/regexec.c (acquire_init_state_context): Make inline.
910         Add always_inline attribute.
911         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
912         into if (dfa->nbackref).
913         (sift_states_backward): Fix comment.
914         (transit_state): Add BE macro.  Move if (next_state->has_backref)
915         into if (dfa->nbackref && next_state).  Don't check for next_state
916         != NULL twice.
917         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
918         for ANCHOR.
919         (parse_expression): Only call init_word_char if word context will be
920         needed.
921
922         * posix/bug-regex11.c (tests): Add new tests.
923
924         * posix/tst-regex.c: Include getopt.h.
925         (timing): New variable.
926         (main): Set timing to 1 if --timing argument is present.
927         Add 2 new tests.
928         (run_test, run_test_backwards): Handle timing.
929
930 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
931
932         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
933         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
934         offsets_needed fields.  Change icase, is_utf8 and map_notascii
935         type from int bitfield to unsigned char.
936         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
937         (build_wcs_upper_buffer): Change prototype to return int.
938         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
939         defines, add prototypes.
940         * posix/regex_internal.c (re_string_allocate): Don't initialize
941         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
942         Use mbs_allocated instead of MBS_* macros.
943         (re_string_construct): Don't initialize stop and valid_len here.
944         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
945         macros.  Reallocate buffers if build_wcs_upper_buffer converted
946         too few bytes.  Set valid_len to bufs_len only for single byte
947         no translation and set in that case valid_raw_len as well.
948         (re_string_realloc_buffers): Reallocate offsets if not NULL.
949         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
950         mbs_case.
951         (re_string_construct_common): Initialize raw_len, mbs_allocated,
952         stop and raw_stop.
953         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
954         after it.  Set valid_raw_len.  Don't set mbs_case.
955         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
956         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
957         before mbrtowc instead of after it.  If upper case character
958         uses different number of bytes than lower case, goto to the
959         slow path.  Don't call towupper unnecessarily twice.  Set
960         valid_raw_len as well.  Handle in the slow path the case if
961         lower and upper case use different number of characters.
962         Don't set mbs_case.
963         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
964         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
965         valid_raw_len.
966         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
967         valid_raw_len.
968         (re_string_reconstruct): Use raw_len/raw_stop to initialize
969         len/stop.  Clear valid_raw_len and offsets_needed when clearing
970         valid_len.  Use mbs_allocated instead of MBS_* macros.
971         Check original offset against valid_raw_len instead of valid_len.
972         Remove mbs_case handling.  Adjust valid_raw_len together with
973         valid_len.  If is_utf8 and looking for tip context, apply
974         pstr->trans first.  If buffers start with partial multi-byte
975         character, initialize mbs array as well if mbs_allocated.
976         Check return value of build_wcs_upper_buffer.
977         (re_string_peek_byte_case): New function.
978         (re_string_fetch_byte_case): New function.
979         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
980         Don't free mbs_case.  Free offsets.
981         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
982         if mb_cur_max == 6.
983         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
984         as well.  Use valid_raw_len instead of valid_len when looking
985         through fastmap.  Adjust registers through input.offsets.
986         (extend_buffers): Allow build_wcs_upper_buffer to fail.
987         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
988         tests.
989
990 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
991
992         * posix/regexec.c (check_subexp_limits): Only check close
993         subexpression limitation if one is found.  Formatting.
994         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
995         Formatting.
996         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
997         Add new test.
998
999 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
1000
1001         * sysdeps/unix/sysv/linux/kernel-features.h
1002         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
1003         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
1004         if __ASSUME_PROT_GROWSUPDOWN is defined.
1005
1006 2003-11-26  Andreas Jaeger  <aj@suse.de>
1007
1008         * sysdeps/unix/sysv/linux/dl-execstack.c
1009         (_dl_make_stack_executable): Set dl_stack_flags always for
1010         success.
1011
1012 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
1013
1014         * locale/program/ld-monetary.c: Only check the first three
1015         characters in int_curr_symbol against ISO-4217, to make the
1016         separator character used by a locale independent of the content
1017         in iso-4217.def.
1018         * locale/iso-4217.def: Remove the space character from all
1019         currency values to get the new test code in ld-monetary.c working.
1020
1021 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
1022
1023         * elf/soinit.c (_fini): Put _fini() in .init_array section if
1024         HAVE_INITFINI_ARRAY is defined.
1025
1026 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1027
1028         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
1029         Define it appropriately after last change.  Use it where __sqrtl
1030         was used.
1031
1032 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
1033
1034         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
1035         sqrt for gcc 3.3 and above.
1036
1037 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1038
1039         * posix/runptests.c (main): Make errors fatal.
1040         * posix/PTESTS: One test in GA135 and GA136 check functionality
1041         which seems not guaranteed.
1042
1043 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
1044
1045         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
1046         returned REG_NOMATCH, set match_last to -1.  Don't initialize
1047         pmatch[0] needlessly.  Fix comment.
1048         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
1049         (set_regs): Fix comment.
1050         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
1051         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
1052         (build_charclass_op): Set has_plural_match if adding both
1053         SIMPLE_BRACKET and COMPLEX_BRACKET.
1054         * posix/bug-regex11.c (tests): Fix register values for one commented
1055         out test.  Add new tests.
1056
1057         * posix/regex_internal.c (re_string_allocate): Make sure init_len
1058         is at least dfa->mb_cur_max.
1059         (re_string_reconstruct): If is_utf8, don't fall back into
1060         re_string_skip_chars just because idx points into a middle of
1061         valid UTF-8 character.  Instead, set the wcs bytes which correspond
1062         to the partial character bytes to WEOF.
1063         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
1064         instead of dfa->nodes_len + 1 state_log entries initially.
1065         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
1066         tests.
1067
1068 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
1069
1070         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
1071         comment.
1072         (re_dfa_t): Add sb_char field.
1073         (bitset_mask): New function.
1074         * posix/regcomp.c (free_dfa_content): Free sb_char.
1075         (init_dfa): Don't initialize word_char unnecessarily.
1076         Initialize sb_char.
1077         (duplicate_node): Don't duplicate !word_char CHARACTERs with
1078         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
1079         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
1080         (duplicate_node_closure): Handle clone_dest == -1 from
1081         duplicate_node.
1082         (peek_token): Initialize word_char bit.
1083         (parse_expression, parse_dup_op): Add comments.
1084         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
1085         starting bytes here at the beginning.  Mask off the bits right
1086         before creating SIMPLE_BRACKET.
1087         (build_charclass_op): Likewise.
1088         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
1089         set accept bits for single-byte characters.
1090         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
1091         being single byte encoded and the rest multi-byte.
1092         * posix/bug-regex19.c (tests): Add new tests.
1093         (do_mb_tests): Initialize t to *test.
1094         (main): Fail even on do_mb_tests errors.
1095
1096 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
1097
1098         * posix/regexec.c: Correct several memory allocation problems.
1099         Add more BE.
1100         * posix/regex_internal.c: Likewise.
1101         * posix/regcomp.c: Likewise.
1102
1103         * posix/regexec.c: Add const in a number of places.
1104         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
1105         debugging.  Its value isn't important.
1106
1107 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
1108
1109         * posix/PTESTS: Fix first test of GA143.
1110
1111 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1112
1113         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
1114         isn't likely.
1115
1116         * locale/programs/charmap.c (charmap_read): If encoding is found
1117         not ASCII compatible, set enc_not_ascii_compatible.
1118         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
1119         * locale/programs/ld-ctype.c (ctype_startup): If
1120         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
1121
1122 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
1123
1124         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
1125         if !__libc_enable_secure.
1126
1127         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
1128         field.
1129         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
1130         (dl_main): Set GL(dl_use_load_bias) default.
1131         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
1132         Add EXTRA_LD_ENVVARS_13.
1133         * elf/dl-support.c (_dl_use_load_bias): New variable.
1134         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
1135         with GL(dl_use_load_bias).
1136         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
1137         LD_USE_LOAD_BIAS.
1138         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
1139         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
1140         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
1141         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
1142         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
1143
1144 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1145
1146         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
1147
1148         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
1149         pointer.  Adjust callers.
1150
1151         * posix/regcomp.c (fetch_token): Change interface to match
1152         peek_token.  This avoids some copying and reduces code size.
1153
1154 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
1155
1156         * posix/bug-regex19.c (tests): Add more tests.
1157
1158         * posix/bug-regex11.c: And one more commented out test.
1159
1160         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
1161         tests multiple times unnecessarily.
1162
1163         * posix/bug-regex19.c (BRE, ERE): Define.
1164         (tests): Add many new tests, remove UTF-8 ones.
1165         (do_one_test, do_mb_tests): New functions.
1166         (main): Rewritten using do_one_test and do_mb_tests.
1167
1168 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
1169
1170         * posix/PTESTS: Fix first test in GA143.
1171
1172 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
1173
1174         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
1175         Add word_trtable.
1176         * posix/regex_internal.c (create_newstate_common, free_state):
1177         Don't free trtable_search.
1178         * posix/regexec.c (check_matching): Remove fl_search argument.
1179         (transit_state_sb): Likewise.  #ifdef out as unused.
1180         (build_trtable): Remove fl_search argument.  Set state->word_trtable
1181         and state->trtable.  Build separate word and non-word tables if
1182         multi-byte and they differ for some character.
1183         (transit_state): Remove fl_search argument.  Don't update
1184         state->trtable here.  Handle state->word_trtable.
1185         #ifdef out unused call to transit_state_sb.
1186         (re_search_internal): Update check_matching caller.
1187         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
1188         bitmask for multi-byte locales.
1189         * posix/bug-regex19.c (tests): Enable some commented out tests, add
1190         2 new tests.
1191         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
1192         multi-byte.  Don't run identical multi-byte tests multiple times
1193         unnecessarily.
1194         (main): Check setlocale return value.
1195         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
1196         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
1197         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
1198         here, without --utf8 argument but with MALLOC_TRACE.
1199
1200 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
1201
1202         * posix/regexec.c (extend_buffers): Don't allocate
1203         twice as big state_log as needed.  Don't modify pstr->valid_len
1204         for mb_cur_max == 1 !icase !trans.
1205
1206         * posix/regcomp.c (free_bin_tree): Removed.
1207         (create_tree): Add dfa argument.  Don't call re_malloc for
1208         each tree, instead allocate from str_tree_storage.
1209         (re_dfa_add_tree_node): New function.
1210         (free_dfa_content): Handle freeing if dfa->nodes == NULL
1211         or dfa->state_table == NULL.
1212         (re_compile_internal): Call free_dfa_content if init_dfa
1213         fails.  Call free_workarea_compile, re_string_destruct
1214         and free_dfa_content for most of the other failure paths.
1215         (init_dfa): Initialize str_tree_storage_idx.
1216         Don't clear any fields on allocation failure.
1217         (free_workarea_compile): Free str_tree_storage chunks
1218         instead of free_bin_tree (dfa->str_tree).
1219         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
1220         followed by create_tree.  Add dfa argument to remaining
1221         create_tree calls.  Remove new_idx variable.  Remove calls
1222         to free_bin_tree.
1223         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
1224         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
1225         (duplicate_tree): Remove calls to free_bin_tree, add dfa
1226         argument to create_tree.
1227         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
1228         (bin_tree_storage_t): New type.
1229         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
1230         fields.
1231         * posix/Makefile (tests): Add bug-regex21.
1232         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
1233         tst-rxspencer-mem and tst-rxspencer.mtrace.
1234         (tests): Depend on $(objpfx)bug-regex21-mem
1235         and $(objpfx)tst-rxspencer-mem.
1236         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
1237         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
1238         * posix/tst-rxspencer.c (main): Add call to mtrace.
1239         Free line at the end.
1240         * posix/bug-regex21.c: New test.
1241
1242 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
1243
1244         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
1245
1246         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
1247         fails, just use the byte, do no fancy conversions.
1248
1249         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
1250         not ->len.
1251         (re_string_is_single_byte_char): Likewise.
1252
1253 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
1254
1255         * posix/regexec.c (get_subexp): After calling get_subexp_sub
1256         reload buf and bkref_str.  Little optimization by avoiding memcmp.
1257
1258 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
1259
1260         * sysdeps/unix/sysv/linux/ia64/sysdep.h
1261         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
1262         that all existing GAS versions have a problem with .align inside
1263         a function.
1264         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
1265         * sysdeps/ia64/memcpy.S: Likewise.
1266         * sysdeps/ia64/memset.S: Likewise.
1267         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
1268         out of .text into .rodata, where it belongs.
1269
1270         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
1271         save/restore input-arguments, because they're necessarily
1272         preserved by the kernel to support syscall-restart.
1273
1274 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1275
1276         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
1277         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
1278         and EPSILON_BIT.
1279         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
1280         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
1281         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
1282         Handle OP_UTF8_PERIOD.
1283         (re_string_reconstruct): Set valid_len for single byte char searching
1284         with no translation and case sensitivity.
1285         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
1286         OP_UTF8_PERIOD.
1287         (re_compile_internal): Don't call optimize_utf8 if preg->translate
1288         != NULL.
1289         (optimize_utf8): Remove BACK_SLASH case.
1290         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
1291         optimized.
1292         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
1293         any bits set and COMPLEX_BRACKET is used.
1294         * posix/regexec.c (transit_state_mb): Fix comment typo.
1295         (group_nodes_into_DFAstates, check_node_accept): Handle
1296         OP_UTF8_PERIOD.
1297         (check_node_accept_bytes): Likewise.  Reorder slightly so that
1298         re_string_char_size_at and re_string_elem_size_at are called
1299         only when needed.
1300         * posix/bug-regex20.c (BRE, ERE): Define.
1301         (tests): Use them to make lines shorter.  Expect . to be
1302         optimized.  Add lots of new tests.
1303         (main): Run (ATM just case sensitive) test with backwards searching
1304         as well.
1305
1306 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1307
1308         * io/bug-ftw4.c: Include string.h.
1309         * posix/fnmatch.c (mbsinit): Remove define.
1310
1311 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
1312
1313         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
1314         well.
1315         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
1316         followed by dup operator is expected to be optimized.
1317
1318         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
1319         variables to the block where they are only used, initialize
1320         nrules only immediately before using it.
1321
1322 2003-11-15  Andreas Jaeger  <aj@suse.de>
1323
1324         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
1325         * sysdeps/x86_64/fpu/s_truncl.S: New file.
1326         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
1327         * sysdeps/x86_64/fpu/s_floorl.S: New file.
1328         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
1329         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
1330
1331         * math/libm-test.inc (floor_test): Test also ±0.25.
1332         (ceil_test): Test -0.25.
1333
1334 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
1335
1336         * sysdeps/posix/getaddrinfo.c: Add support for destination address
1337         selection according to RFC 3484.
1338
1339 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
1340
1341         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
1342         Replace last two parameters of re_string_allocate and
1343         re_string_construct with pointer to DFA.
1344         (re_dfa_t): Add map_notascii field.
1345         * posix/regcomp.c (re_compile_internal): Add call of
1346         re_string_construct.
1347         (init_dfa): Initialize map_notascii.
1348         * posix/regex_internal.c: Adjust definitions of re_string_allocate
1349         and re_string_construct.
1350         Pass DFA to re_string_construct.  Adjust definition.  Initialize
1351         map_notascii field.
1352         (build_wcs_upper_buffer): If map_notascii is zero use simplified
1353         method to map ASCII values to upper case.
1354         * posix/regex.c: Include localeinfo.h.
1355         * posix/regexec.c: Adjust call of re_string_allocate.
1356
1357         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
1358         * locale/localeinfo.h (LIMAGIC): Change value.
1359         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
1360         * locale/C-ctype.h: Likewise.
1361         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
1362         ASCII to non-ASCII value.  Write out that value.
1363
1364         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
1365         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
1366
1367 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
1368
1369         * posix/tst-rxspencer.c (check_match): @ without any following
1370         characters must match only end of string.
1371         (main): Fix filename in error message.
1372
1373 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1374
1375         * sysdeps/ia64/dl-machine.h: Force inlining of
1376         elf_machine_runtime_setup().
1377
1378 2003-11-13  Andreas Jaeger  <aj@suse.de>
1379
1380         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
1381         (CFLAGS-test-double.c): Likewise.
1382         (CFLAGS-test-ldouble.c): Likewise.
1383         (CPPFLAGS-test-ifloat.c): Likewise.
1384         (CPPFLAGS-test-idouble.c): Likewise.
1385         (CPPFLAGS-test-ildoubl.c): Likewise.
1386
1387         * math/libm-test.inc (ceil_test): Test ceil (0.25).
1388
1389 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
1390
1391         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
1392         sends the netlink data.
1393         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
1394
1395 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
1396
1397         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
1398         with no bits set for >= 0x80 chars is seen.
1399         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
1400         optimized.
1401         (main): Run all tests with RE_ICASE as well.
1402
1403 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1404
1405         * posix/Makefile: Add rules to build and run tst-rxspencer.
1406         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
1407         * posix/tst-rxspencer.c: New file.
1408         * posix/rxspencer/tests: New file.
1409         * posix/rxspencer/COPYRIGHT: New file.
1410         Patch mostly by Jakub Jelinek.
1411
1412         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
1413         this is no option given the first token.
1414
1415         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
1416         hyphen in range expression.  Return EBRACK in this case.
1417
1418         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
1419         we expect them or it's the last element in the bracket expression.
1420         Indicated by new parameter.  Adjust all callers.
1421
1422         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
1423         Prettier error messages.
1424
1425         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
1426         number in {,} expression is larger.
1427
1428 2003-11-13  Andreas Jaeger  <aj@suse.de>
1429
1430         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
1431         Define appropriately for x86_64.
1432         (__ASSUME_UTIMES): Likewise.
1433         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
1434
1435         * sysdeps/x86_64/fpu/s_ceill.S: New file.
1436
1437 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1438
1439         * posix/regcomp.c (parse_expression): In BRE consecutive
1440         duplications are not allowed.
1441
1442 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
1443
1444         * posix/regcomp.c (parse_bracket_exp): If end of expression is
1445         seen, return EBRACK error, not BADPAT.
1446
1447         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
1448         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
1449         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
1450         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
1451
1452         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
1453         return REG_EPAREN.
1454
1455         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
1456         * posix/runptests.c (main): Handle comments.
1457         * posix/PTESTS2C.sed: Handle comments.
1458
1459 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1460
1461         * posix/regcomp.c (optimize_utf8): New function.
1462         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
1463         of !icase.
1464         (re_compile_internal): Call optimize_utf8 if not case insensitive
1465         and in UTF-8 locale.
1466         * posix/regex_internal.h: Ifdef out some prototypes if
1467         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
1468         * posix/Makefile (tests): Add bug-regex20.
1469         (bug-regex20-ENV): Add LOCPATH.
1470         * posix/bug-regex20.c: New test.
1471
1472 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1473
1474         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
1475
1476 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1477
1478         * posix/tst-regex.c (umemlen): New variable.
1479         (test_expr): Add expectedicase argument.  Test case insensitive
1480         searches as well as backwards searches (case sensitive and
1481         insensitive) too.
1482         (run_test): Add icase argument.  Use it to compute regcomp flags.
1483         (run_test_backwards): New function.
1484         (main): Cast read to size_t to avoid warning.  Set umemlen.
1485         Add expectedicase arguments to test_expr.
1486         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
1487         find previous character by walking back instead of converting
1488         all chars from beginning.
1489
1490 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1491
1492         * posix/regex_internal.h (struct re_string_t): Add is_utf8
1493         and mb_cur_max fields.
1494         (struct re_dfa_t): Likewise.  Reorder fields to make structure
1495         smaller on 64-bit arches.
1496         (re_string_allocate, re_string_construct): Add mb_cur_max and
1497         is_utf8 arguments.
1498         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
1499         instead of MB_CUR_MAX.
1500         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
1501         instead of MB_CUR_MAX.
1502         (re_compile_internal): Pass new arguments to re_string_construct.
1503         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
1504         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
1505         of MB_CUR_MAX.
1506         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
1507         dfa->mb_cur_max instead of MB_CUR_MAX.
1508         * posix/regex_internal.c (re_string_construct_common): Add
1509         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
1510         (re_string_allocate, re_string_construct): Add mb_cur_max and
1511         is_utf8 arguments, pass them to re_string_construct_common.
1512         Use mb_cur_max instead of MB_CUR_MAX.
1513         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
1514         MB_CUR_MAX.
1515         (re_string_reconstruct): Likewise.
1516         (re_string_context_at): Use input->mb_cur_max instead of
1517         MB_CUR_MAX.
1518         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
1519         instead of MB_CUR_MAX.
1520         * posix/regexec.c (re_search_internal): Likewise.
1521         Pass new arguments to re_string_allocate.
1522         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
1523         MB_CUR_MAX.
1524         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
1525
1526 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
1527
1528         * posix/Makefile (tests): Add bug-regex19.
1529         (bug-regex19-ENV): Add LOCPATH.
1530         * posix/bug-regex19.c: New test.
1531
1532 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
1533
1534         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
1535         with MB_CUR_MAX > 1 locales in the fastmap.
1536
1537 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
1538
1539         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
1540         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
1541         of toupper.
1542         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
1543         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
1544         * posix/bug-regex17.c: New file
1545         * posix/bug-regex18.c: New file.
1546
1547 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
1548
1549         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
1550         Define __NR_pread/__NR_pwrite if not done in kernel headers
1551
1552 2003-11-11  Roland McGrath  <roland@redhat.com>
1553
1554         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
1555
1556         * manual/Makefile (info): Don't depend on dir-add.info.
1557         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
1558         (dir-add.info): Target removed, replaced with ...
1559         (dir-add.texi): New target.
1560         (distribute): Add it.
1561         (install): Remove variant with --section arguments.
1562         Let the @dircategory directives do their work.
1563         (mostlyclean): Don't remove dir-add.info here.
1564         (realclean): Remove dir-add.texi here.
1565         * manual/libc.texinfo: @include dir-add.texi
1566         * configure.in: Remove check for old Debian install-info.
1567         * configure: Regenerated.
1568         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
1569
1570 2003-11-08  Andreas Schwab  <schwab@suse.de>
1571
1572         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
1573
1574 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
1575
1576         * io/ftwtest-sh: Fix nested sed commands.
1577
1578 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
1579
1580         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
1581         valid_len wide chars.
1582
1583 2003-11-09  Roland McGrath  <roland@redhat.com>
1584
1585         * manual/examples/dir2.c (one): Add const to argument type.
1586         Reported by J de Haan <j.de.haan@home.nl>.
1587
1588 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
1589
1590         * po/pl.po: Update from translation team.
1591
1592 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
1593
1594         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
1595         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
1596         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
1597         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
1598         and compat_symbol.
1599         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
1600         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
1601         and nftw64@@GLIBC_2.3.3.
1602
1603         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
1604         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
1605         * io/ftw.c (ftw_dir): Add old_dir argument.
1606         Clear result if it was FTW_SKIP_SIBLINGS after processing all
1607         dir entries.  Change cwd back if old_dir != NULL.
1608         (process_entry): Adjust caller.  Don't change cwd back here.
1609         Change FTW_SKIP_SUBTREE result to 0.
1610         (ftw_startup): Adjust ftw_dir caller.
1611         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
1612         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
1613         (options, main): Add --skip-subtree and --skip-siblings options.
1614         (cb): Use return FTW_CONTINUE instead of return 0.
1615         Handle --skip-subtree and --skip-siblings.
1616         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
1617         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
1618
1619 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
1620
1621         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
1622         non-zero.
1623         * io/Makefile (tests): Add bug-ftw4.
1624         * io/bug-ftw4.c: New test.
1625
1626 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
1627
1628         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
1629         (struct _IO_FILE_complete_plus): New type.
1630         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
1631         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
1632         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
1633         Call _IO_old_init instead of _IO_init.
1634
1635 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
1636
1637         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
1638
1639         * locale/iso-639.def: Add Blin.
1640         Patch by Daniel Yacob <locales@geez.org>.
1641
1642 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
1643
1644         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
1645         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
1646
1647 2003-11-01  Randolph Chung  <tausq@debian.org>
1648
1649         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
1650         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
1651         Add missing parentheses.
1652
1653 2003-11-01  Roland McGrath  <roland@redhat.com>
1654
1655         * libio/bug-ftell.c (do_test): Add a cast.
1656
1657 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
1658
1659         * Makerules (shlib.lds): Make sure that ld doesn't try to link
1660         anything while generating the linker script.
1661
1662 2003-10-31  Roland McGrath  <roland@redhat.com>
1663
1664         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
1665         special members.
1666
1667 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
1668
1669         * po/be.po: Update from translation team.
1670
1671 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
1672
1673         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
1674         _dl_map_object.
1675
1676         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
1677         ELF header.
1678
1679         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
1680         rest of line.  We use getline which means this cannot happen.
1681
1682 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
1683
1684         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
1685         Avoid infinite loops in case the mounts file is hosed.
1686         * io/Makefile: Add rules to build and run tst-statvfs.
1687         * io/tst-statvfs.c: New file.
1688
1689         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
1690         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
1691         executables unless __RTLD_OPENEXEC flag is present.
1692         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
1693         _dl_map_object when loading the executable.
1694
1695         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
1696         correctly.
1697         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
1698
1699         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
1700         reverse lookup format for IPv6 addresses is using bitstring and
1701         .ip6.arpa suffix.
1702         * resolv/ns_name.c: Implement encoding and decoding bitstring in
1703         hex format.
1704
1705 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
1706
1707         * locale/programs/locale.c (show_info): Fix printing word values on
1708         64-bit big-endian architectures.
1709
1710 2003-10-19  Bruno Haible  <bruno@clisp.org>
1711
1712         * intl/hash-string.c (hash_string): Zero-extend each char from the
1713         string; the old code did a sign-extend on some platforms.
1714
1715 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
1716
1717         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
1718         append options to these.
1719         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
1720
1721 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1722
1723         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
1724
1725 2003-10-15  Roland McGrath  <roland@redhat.com>
1726
1727         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
1728         Fake an entry for the main executable and then call __dl_iterate_phdr.
1729         * elf/Makefile (routines): Remove dl-iteratephdr-static.
1730         (elide-routines.os): Likewise.
1731         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
1732         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
1733         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
1734
1735 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
1736
1737         * elf/rtld.c (print_statistics): Print also number of relative
1738         relocations.
1739
1740 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
1741
1742         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
1743         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
1744         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
1745         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
1746         and undef JUMPTARGET before use.
1747         [PIC]: Save pic register around syscall.
1748         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
1749         Cleanup asm statment.
1750
1751 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1752
1753         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
1754         after trapa instruction.
1755
1756 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1757
1758         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
1759
1760 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
1761
1762         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
1763
1764 2003-10-09  Roland McGrath  <roland@redhat.com>
1765
1766         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
1767         is no file to name.
1768
1769 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
1770
1771         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
1772         two identical copies of strings.
1773
1774 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
1775
1776         * posix/bug-regex11.c: Add some more tests which fail so far.
1777         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
1778
1779 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
1780
1781         * posix/bug-regex11.c: Add more backreference-related test cases.
1782         (main): Show the failing regex in the error messages.
1783         * posix/regexec.c (check_dst_limits_calc_pos):
1784         Simplify some nested conditionals.  Replace if's with a switch
1785         statement.
1786         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
1787         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
1788         does not change in the recursive invocation, fixing an infinite loop
1789         in the ()\1*\1* regex.
1790         (sift_states_backward): Fix function comment.
1791         * posix/regcomp.c (calc_epsdest): Add an assertion.
1792
1793 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
1794
1795         * manual/examples/testopt.c: Fix warnings.  Better error message
1796         for missing -c argument.
1797         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
1798
1799         * timezone/asia: Update from tzdata2003d.
1800         * timezone/australasia: Likewise.
1801         * timezone/backward: Likewise.
1802         * timezone/europe: Likewise.
1803         * timezone/iso3166.tab: Likewise.
1804         * timezone/northamerica: Likewise.
1805         * timezone/southamerica: Likewise.
1806         * timezone/zone.tab: Likewise.
1807
1808 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
1809
1810         * sysdeps/ia64/backtrace.c: New file.
1811         * sysdeps/x86_64/backtrace.c: New file.
1812         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
1813         (_Unwind_Backtrace): New prototype.
1814
1815 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
1816
1817         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
1818         * sysdeps/i386/elf/setjmp.S: Likewise.
1819
1820 2003-10-02  Roland McGrath  <roland@redhat.com>
1821
1822         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
1823         * argp/argp-namefrob.h
1824         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
1825         (__argp_short_program_name): Don't declare fn, define it as a macro.
1826
1827 2003-08-22  Simon Josefsson  <jas@extundo.com>
1828
1829         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
1830
1831         * argp/argp-help.c: Don't include malloc.h, some platforms
1832         complain and it doesn't appear to be used.
1833         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
1834         strerror_r.
1835         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
1836         strerror.
1837         (hol_entry_long_iterate): Change __attribute to __attribute__.
1838         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
1839         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
1840         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
1841         modified after comments from Ulrich Drepper.
1842         (__argp_short_program_name): Ditto.
1843         (__argp_state_help, __argp_error, __argp_failure): Use it.
1844         (__argp_failure): Use strerror when necessary.
1845
1846         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
1847         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
1848         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
1849         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
1850         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
1851         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
1852         non-unlocked functions.
1853         [!_LIBC]: Add prototypes for __argp_basename and
1854         __argp_short_program_name.
1855
1856         * argp/argp-parse.c (argp_default_parser): Only use
1857         program_invocation{_short,}_name if declared.
1858         (parser_init): Use __argp_short_program_name.
1859
1860         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
1861         '#include features.h'.
1862
1863         * argp/argp.h [!__attribute__]: Define to nothing.
1864
1865 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
1866
1867         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
1868         for the first token in a subexpression as well.
1869
1870 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
1871
1872         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
1873         handling again.
1874         (parse_reg_exp): Likewise.
1875         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
1876
1877         * posix/bug-regex11.c (tests): Add new tests.
1878         * posix/bug-regex12.c (tests): Add new test.
1879
1880 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
1881
1882         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
1883         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
1884
1885 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
1886
1887         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
1888         the old thread-m.h header too.
1889
1890 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
1891
1892         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
1893         back to 131027 since this is what the kernel enforces.
1894
1895         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
1896         define it with libc_freeres_ptr.
1897
1898 2003-10-01  Roland McGrath  <roland@redhat.com>
1899
1900         * elf/rtld.c (dl_main): Add cast in last change.
1901
1902 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
1903
1904         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
1905         "#if 0" surrounding most of contents.
1906         (SYSCALL_ERROR_LABEL): Define.
1907         (__SYSCALL_CLOBBERS): Add $10.
1908         (internal_syscall7): Remove.
1909         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
1910
1911 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
1912
1913         * elf/rtld.c (dl_main): Also set l_map_start.
1914
1915 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
1916
1917         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
1918         to work around kernel problem.
1919
1920 2003-09-27  Wolfram Gloger  <wg@malloc.de>
1921
1922         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
1923         "thread-m.h", so that default parameters can be overridden in a
1924         system-specific malloc-machine.h.  Remove extra ; from extern "C"
1925         closing brace.
1926         * sysdeps/generic/malloc-machine.h: New file.
1927         * sysdeps/mach/hurd/malloc-machine.h: New file.
1928         * malloc/thread-m.h: Removed.
1929         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
1930         is in sysdeps/generic/malloc-machine.h now.
1931
1932 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
1933
1934         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
1935         variables only used if TLS_TCB_AT_TP is defined into the #if
1936         branch.
1937
1938         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
1939         well to cover using long long in C90.
1940
1941 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
1942
1943         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
1944         Redefine and use __libc_cleanup_region_end instead.
1945
1946 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
1947
1948         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
1949         fix prototypes for picky C++ compilers.
1950
1951 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
1952
1953         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
1954         the device ID is invalid and return -1.
1955         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
1956
1957 2003-09-26  Andreas Schwab  <schwab@suse.de>
1958
1959         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
1960         rt_sigprocmask system call.
1961
1962 2003-09-25  Roland McGrath  <roland@redhat.com>
1963
1964         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
1965         Don't check for zero __libc_stack_end, it should be initialized.
1966         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
1967         and fall back if it fails with EINVAL.
1968         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
1969
1970 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
1971
1972         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
1973         sysdeps/i386/dl-procinfo.c instead of
1974         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
1975         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
1976         #include_next.
1977
1978 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
1979
1980         * posix/regcomp.c (peek_token): Remove recent changes for anchor
1981         handling again.
1982         (parse_reg_exp): Likewise.
1983         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
1984
1985         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
1986         banners.
1987
1988         * nis/nis_table.c (nis_list): Always strdup string used with
1989         ibreq->ibr_name.  Add several NULL pointer checks.
1990
1991         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
1992         of nis_list.
1993         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
1994         * nis/nss_nisplus/nisplus-grp.c: Likewise.
1995         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
1996         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
1997         * nis/nss_nisplus/nisplus-network.c: Likewise.
1998         * nis/nss_nisplus/nisplus-proto.c: Likewise.
1999         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2000         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2001         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
2002         * nis/nss_nisplus/nisplus-service.c: Likewise.
2003         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
2004
2005         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
2006         and PROT_GROWSUP.
2007         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
2008         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
2009         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
2010         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2011         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
2012         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
2013         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
2014         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
2015         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
2016         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
2017         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
2018
2019 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2020
2021         * misc/syslog.c: Include locale.h.
2022         (vsyslog): Add date always in C locale %h %e %T format.
2023
2024 2003-09-24  Paul Eggert  <eggert@twinsun.com>
2025
2026         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
2027         size_t overflow when reallocating storage.
2028         * argp/argp-help.c (make_hol, hol_append): Likewise.
2029         (SIZE_MAX): New macro.
2030
2031 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
2032
2033         * sysdeps/mach/hurd/bits/libc-lock.h
2034         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
2035
2036 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
2037
2038         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
2039         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
2040         #include_next dl-procinfo.h to get them.
2041         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
2042         (_DL_PLATFORMS_COUNT): Likewise.
2043         (_DL_FIRST_PLATFORM): Likewise.
2044         (_DL_HWCAP_PLATFORM): Likewise.
2045         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
2046         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
2047         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
2048         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
2049         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
2050         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
2051         HWCAP_IMPORTANT): Likewise.
2052         (_DL_PROCINFO_H_): Likewise.
2053         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
2054         (_dl_string_platform): Likewise.
2055         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
2056         * sysdeps/i386/dl-procinfo.c: ... here, new file.
2057
2058 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2059
2060         * sysdeps/unix/sysv/linux/dl-execstack.c
2061         (_dl_make_stack_executable): Remember that we changed the permission.
2062
2063         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
2064         __libc_stack_end.  Patch by David Mosberger.
2065
2066 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2067
2068         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
2069         __libc_stack_end@GLIBC_PRIVATE.
2070
2071         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
2072         (_dl_sysdep_start): Set __libc_stack_end here.
2073         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
2074         __libc_stack_end.
2075         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
2076         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
2077         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
2078         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
2079         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
2080         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
2081         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
2082         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
2083         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
2084         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
2085         (RTLD_START): Remove setting of __libc_stack_end.
2086         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
2087         (RTLD_START): Remove setting of __libc_stack_end.
2088
2089 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2090
2091         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
2092         function definitions.  Adjust macro expansions accordingly.
2093         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
2094         minor, makedev name.
2095         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
2096
2097 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2098
2099         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
2100         Add __THROW.
2101
2102 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2103
2104         * nscd/Makefile (others): Add nscd before including ../Rules.
2105
2106 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2107
2108         * nscd/Makefile: Add rules to build nscd as a PIE.
2109         * configure.in: Check for -fpie and -pie compiler options.
2110         * config.make.in (have-fpie): Define.
2111
2112 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2113
2114         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
2115         kernel dev_t size.
2116         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
2117         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2118         * sysdeps/unix/sysv/linux/makedev.c: New file.
2119         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
2120         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
2121         (sysdep_routines): Add makedev.
2122         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
2123         major, minor, makedev.
2124         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
2125         kernel dev_t.
2126         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
2127         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2128         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
2129         Code by Alexander Viro <aviro@redhat.com>.
2130
2131 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2132
2133         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
2134         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
2135         makecontext.
2136         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
2137         for include Altivec support for PPC32.  It was not compatible.
2138         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
2139         offsets for ucontext_t change.
2140         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
2141         for ucontext_t change.  Add compatibility code.
2142         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
2143         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
2144         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
2145         Patch by Paul Mackerras <paulus@samba.org>.
2146
2147 2003-02-25  Randolph Chung  <tausq@debian.org>
2148
2149         * sysdeps/hppa/Makefile: Include compat code in build.
2150         * sysdeps/hppa/libgcc-compat.c: New file.
2151         * sysdeps/hppa/Dist: Add libgcc-compat.c.
2152         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2153
2154 2003-09-23  Roland McGrath  <roland@redhat.com>
2155
2156         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
2157         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
2158         Move GL(dl_make_stack_executable_hook) initialization up.
2159         * elf/tst-execstack-prog.c: New file.
2160         * elf/Makefile (tests-execstack-yes): Add it.
2161         (LDFLAGS-tst-execstack-prog): New variable.
2162
2163 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
2164
2165         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
2166         before calling _dl_start, using %rip relative access.
2167         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
2168         and _dl_fini.
2169
2170 2003-09-23  Roland McGrath  <roland@redhat.com>
2171
2172         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
2173         calling _dl_start, using GOTOFF access.
2174
2175         * configure.in (libc_cv_z_execstack): New check.
2176         * configure: Regenerated.
2177         * config.make.in (have-z-execstack): New variable set by it.
2178         * elf/tst-execstack.c: New file.
2179         * elf/tst-execstack-mod.c: New file.
2180         * elf/tst-execstack-needed.c: New file.
2181         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
2182         variables.
2183         (tests, modules-names): Conditionally include them.
2184         (distribute): Add tst-execstack-mod.c here.
2185         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
2186         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
2187         ($(objpfx)tst-execstack-needed): New target.
2188         (LDFLAGS-tst-execstack-needed): New variable.
2189
2190         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
2191         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
2192         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
2193         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
2194         Initialize _dl_make_stack_executable_hook.
2195         * elf/dl-support.c: Define those new variables.
2196         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
2197         (_dl_phdr): Fix type.
2198         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
2199         enable execute permission for the stack if necessary.
2200         * sysdeps/generic/dl-execstack.c: New file.
2201         * elf/Makefile (dl-routines): Add it.
2202         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
2203         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2204
2205 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2206
2207         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
2208
2209 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
2210
2211         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
2212         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
2213         __fcntl_nocancel.
2214
2215 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2216
2217         * malloc/malloc.c: Include <stdint.h>.
2218
2219 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
2220
2221         * posix/regcomp.c (build_word_op): Rename like...
2222         (build_charclass_op): ...this.  Accept two extra parameters,
2223         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
2224         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
2225         (parse_expression): Replace build_word_op with
2226         build_charclass_op, add new arguments, accept OP_SPACE
2227         and OP_NOTSPACE.
2228         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
2229         and OP_NOTSPACE.
2230
2231         * posix/regcomp.c (peek_token): Don't look back for ( or |
2232         to check whether to treat a caret as special.  It fails
2233         for the (extended) regex \(^.
2234         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
2235         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
2236
2237         * posix/regexec.c: Check out of bounds value before shifting.
2238
2239         * posix/regex_internal.h: Define __attribute for non-gcc.
2240
2241 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
2242
2243         * include/atomic.h (atomic_compare_and_exchange_val_rel,
2244         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
2245         to avoid confusion.
2246
2247         * sysdeps/unix/opendir.c: Include string.h.
2248
2249 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2250
2251         * timezone/zdump.c: Update from tzcode2003c.
2252         * timezone/zic.c: Likewise.
2253         * timezone/leapseconds: Update from tzdata2003c.
2254
2255 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
2256
2257         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
2258         final build to ease quality control.
2259
2260         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
2261         ld.so, don't include NULL buffer pointer handling.
2262
2263 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
2264
2265         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
2266
2267 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
2268
2269         * libio/memstream.c (open_memstream): Use _IO_init instead of
2270         _IO_old_init.
2271
2272 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2273
2274         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
2275         have to recognize octal and hexadecimal numbers as well.  Simplify
2276         function, signs are handled in strtol.
2277         * posix/wordexp-test.c: Add tests for octal and hexadecimal
2278         numbers in arithmetic expressions.
2279
2280 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2281
2282         * elf/Makefile (distribute): Add tst-alignmod.c.
2283         (tests): Add tst-align.
2284         (modules-names): Add tst-alignmod.
2285         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
2286         $(stack-align-test-flags).
2287         ($(objpfx)tst-align): Depend on libdl.
2288         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
2289         * elf/tst-align.c: New file.
2290         * elf/tst-alignmod.c: New file.
2291         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
2292         * misc/tst-tsearch.c: Include tst-stack-align.h.
2293         (stack_align_check): New array.
2294         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
2295         (main): Report error if stack was not enough aligned
2296         in cmp_fn or walk_action.
2297         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
2298         * stdlib/tst-qsort.c: Include tst-stack-align.h.
2299         (align_check): New var.
2300         (compare): Use TEST_STACK_ALIGN () macro.
2301         (main): Report error if stack was not enough aligned in compare.
2302         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
2303         unneeded -mpreferred-stack-boundary=4.
2304         * sysdeps/x86_64/tst-stack-align.h: New file.
2305
2306         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
2307         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
2308
2309 2003-09-17  Philip Blundell  <philb@gnu.org>
2310
2311         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
2312         (BX): Define.
2313         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
2314
2315         * sysdeps/arm/sysdep.h (DO_RET): New.
2316
2317         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
2318         required but not defined.  Improve test of error code.
2319
2320 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2321
2322         * sysdeps/i386/Makefile (stack-align-test-flags): Add
2323         -malign-double -mpreferred-stack-boundary=4.
2324
2325 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2326
2327         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
2328         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
2329
2330 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2331
2332         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
2333         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
2334
2335 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2336
2337         * Makeconfig (stack-align-test-flags): Set.
2338         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
2339         $(stack-align-test-flags).
2340         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
2341         (align_check): New var.
2342         (comp): Use TEST_STACK_ALIGN macro.
2343         (do_test): Fail if align_check != 1.
2344         * sysdeps/generic/tst-stack-align.h: New file.
2345         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
2346         * sysdeps/i386/i686/tst-stack-align.h: New file.
2347
2348 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2349
2350         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
2351         stack which is aligned (mod 16).
2352
2353 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
2354             Hans-Peter Nilsson  <hp@axis.com>
2355
2356         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
2357         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
2358
2359 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2360
2361         * dirent/scandir.c: Include bits/libc-lock.h.
2362         (struct scandir_cancel_struct): New type.
2363         (cancel_handler): New function.
2364         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
2365         scandir_cancel_struct.
2366
2367 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
2368
2369         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
2370         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2371         Add internal_statvfs.
2372         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
2373         instead of including "internal_statvfs.c".
2374         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
2375         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
2376         Add code to avoid the stat calls on all the reported mount points
2377         when we can determine mismatch in advance.
2378         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
2379         USBDEVFS_SUPER_MAGIC.
2380
2381 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
2382
2383         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
2384         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
2385
2386 2003-09-16  Bruno Haible  <bruno@clisp.org>
2387
2388         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
2389         invoking msgfmt, not before.
2390
2391 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2392
2393         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
2394         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
2395         $(uses-callbacks).
2396         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
2397         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
2398         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
2399         * elf/dl-iteratephdr.c (cancel_handler): New function.
2400         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
2401         * elf/link.h (dl_iterate_phdr): Remove __THROW.
2402         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
2403         Add $(uses-callbacks).
2404         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
2405         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
2406         $(exceptions) to $(uses-callbacks).
2407         * Makeconfig (uses-callbacks): Set to $(exceptions).
2408         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
2409         $(uses-callbacks).
2410         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
2411         Likewise.
2412
2413 2003-09-15  Andreas Schwab  <schwab@suse.de>
2414
2415         * sysdeps/m68k/setjmp.c: Add hidden_def.
2416
2417 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2418
2419         * libio/memstream.c (open_memstream): Don't allow wide char operations.
2420
2421         * dirent/dirent.h: Remove __THROW from scandir.
2422
2423 2003-09-14  Philip Blundell  <philb@gnu.org>
2424
2425         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
2426         to be available.
2427
2428         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
2429
2430         * sysdeps/arm/memset.S: Rewrite.
2431
2432 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
2433
2434         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
2435         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
2436         __SLONGWORD_TYPE otherwise.
2437
2438 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2439
2440         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
2441         (CFLAGS-ftw64.c): Likewise.
2442
2443 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
2444
2445         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
2446         (CFLAGS-nscd_getgr_r.c): Likewise.
2447         (CFLAGS-nscd_gethst_r.c): Likewise.
2448
2449 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
2450
2451         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
2452         interfaces.
2453
2454         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
2455         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
2456         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
2457         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
2458         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
2459         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
2460         Likewise.
2461         * misc/Makefile (CFLAGS-err.c): Likewise.
2462         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
2463         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
2464         CFLAGS-glob64.c): Likewise.
2465         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
2466         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
2467         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
2468         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
2469         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
2470
2471         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
2472
2473         * libio/stdio.h: Remove __THROW from cuserid prototype.
2474
2475         * locale/loadarchive.c: Use only non-cancelable interfaces.
2476         * resolv/herror.c (herror): Likewise.
2477
2478         * malloc/hooks.c: Before using IO stream mark stream so it uses
2479         only non-cancelable interfaces.
2480         * malloc/malloc.c: Likewise.
2481         * posix/getopt.c: Likewise.
2482
2483
2484 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
2485
2486         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
2487
2488 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
2489
2490         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
2491
2492         * misc/err.h: Remove __THROW from all prototypes.
2493
2494         * posix/getopt.h (__THROW): Define if not already defined.  Add
2495         __THROW to the getopt functions.
2496
2497 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
2498
2499         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
2500         (CFLAGS-fts.c): Likewise.
2501         * io/fcntl.h: Remove __THROW from lockf prototypes.
2502         * io/fts.h: Remove most __THROW.
2503
2504 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
2505
2506         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
2507         (TLS_LD): Likewise.
2508         (TLS_GD): Likewise.
2509
2510 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
2511
2512         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
2513         _IO_free_backup_area call.
2514
2515 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
2516
2517         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
2518         syscall invocation.
2519         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
2520         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
2521         Also, only assert off_t size is 4 for N32 and O32, and clean up
2522         white space.
2523         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
2524
2525 2003-09-10  Roland McGrath  <roland@redhat.com>
2526
2527         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
2528         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
2529         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
2530         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
2531         Reported by Daniel Jacobowitz  <drow@mvista.com>.
2532
2533 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
2534
2535         * string/Makefile (strop-tests): Add memccpy.
2536         * string/test-memccpy.c: New test.
2537
2538 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
2539
2540         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
2541         siginfo_t * argument before, change into struct ucontext *.
2542         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
2543         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
2544         instead of structure.
2545         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
2546         Likewise.
2547
2548 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
2549
2550         * string/stratcliff.c (main): Check memccpy.
2551
2552 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
2553
2554         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
2555         character is found during recovery, use correct register when
2556         determining the position of the found character.
2557
2558 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
2559
2560         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
2561         avoid segfaults when reading from unmapped pages. For aligned
2562         reload and continue, for misaligned, roll back and use byte copy.
2563         Save ar.ec on entry and restore on exit.
2564
2565 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
2566
2567         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
2568
2569 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
2570
2571         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
2572         the top of the list.
2573         * sysdeps/mips/mips64/n64/Implies: Likewise.
2574
2575 2003-09-08  Roland McGrath  <roland@frob.com>
2576
2577         * sysdeps/unix/sysv/linux/speed.c
2578         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
2579         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
2580         * sysdeps/unix/sysv/linux/bits/termios.h
2581         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
2582         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
2583         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
2584
2585 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
2586
2587         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
2588         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
2589
2590 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
2591
2592         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
2593         (__u_quad_t): Make unsigned long int if 64-bit.
2594         (__SQUAD_TYPE): Make long int if 64-bit.
2595         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
2596         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
2597
2598 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
2599
2600         * Makefile (tests): Run check-c++-types.sh if possible.
2601         * scripts/check-c++-types.h: New file.
2602         * scripts/data/c++-types-i386-linux-gnu.data: New file.
2603
2604 2003-09-08  Andreas Jaeger  <aj@suse.de>
2605
2606         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
2607         Use struct sigcontext.
2608
2609         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
2610         Use struct sigcontext.
2611         (GET_PC): Adopt.
2612         (GET_FRAME): Likewise.
2613         (GET_STACK): Likewise.
2614
2615 2003-09-08  Wolfram Gloger  <wg@malloc.de>
2616
2617         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
2618         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
2619         (mALLOPt): Avoid requirement of C99.
2620
2621 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
2622
2623         * libio/bug-ftell.c: Include <sys/types.h>.
2624         (main): Mark cp as const.
2625
2626 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
2627
2628         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
2629         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
2630
2631 2003-09-05  Roland McGrath  <roland@redhat.com>
2632
2633         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
2634         and c_ospeed fields.
2635         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
2636         (cfsetispeed): Set c_ispeed field.
2637         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
2638         to match corresponding speed.c code.
2639
2640 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
2641
2642         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
2643         narrow character buffer.
2644         * libio/Makefile: Add rules to build and run bug-ftell.
2645         * libio/bug-ftell.c: New file.
2646
2647         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
2648
2649         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
2650         matching the decimal point and possibly leading the thousands
2651         separator.  This caused the recognition of thousands separators to
2652         always fail.
2653
2654 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
2655
2656         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
2657         write mode from read in backup buffer.
2658         * libio/Makefile (tests): Add bug-ungetc2.
2659         * libio/bug-ungetc2.c: New file.
2660
2661 2003-09-05  Roland McGrath  <roland@redhat.com>
2662
2663         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
2664
2665 2003-09-04  Roland McGrath  <roland@frob.com>
2666
2667         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
2668         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
2669
2670 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
2671
2672         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
2673         Fix a typo.
2674
2675 2003-09-05  Andreas Jaeger  <aj@suse.de>
2676
2677         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
2678         to make it conforming C.
2679         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
2680
2681         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
2682         prototype to use variable argument lists and get the possible one
2683         argument via va_arg.
2684         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
2685         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
2686
2687 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
2688
2689         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
2690
2691         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
2692         Report correct value for vxfs.
2693         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
2694
2695         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
2696         data.
2697
2698         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
2699         over the place.  It would be allowed to have these functions as
2700         cancellation points but the cleanup would be ugly and a lot of
2701         work.
2702
2703         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
2704         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
2705
2706         * include/fcntl.h (__fcntl_nocancel): Declare.
2707         * sysdeps/unix/sysv/linux/fcntl.c: New file.
2708         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
2709         cancellation if absolutely needed.
2710         (__fcntl_nocancel): Define.
2711
2712         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
2713         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
2714         -fexceptions.
2715         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
2716         extend_alloca.
2717
2718         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
2719         instead of __close.
2720
2721         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
2722         unnecessary errno handling.
2723
2724         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
2725         Initialize it in all cases.  Change it to be a bit more like the
2726         code we had before.
2727
2728 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
2729
2730         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
2731         __builtin_expect.
2732         (_IO_file_open): Likewise.  Use close_not_cancel.
2733
2734 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
2735
2736         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
2737         * libio/fileops.c [_LIBC]: Remove close macro.
2738         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
2739         (_IO_new_file_open): Recognize 'c' flag in mode string.
2740         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
2741         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
2742         write_not_cancel.
2743         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
2744         * inet/rcmd.c: Likewise.
2745         * inet/ruserpass.c: Likewise.
2746         * intl/localealias.c: Likewise.
2747         * malloc/mtrace.c: Likewise.
2748         * misc/getpass.c: Likewise.
2749         * misc/getttyent.c: Likewise.
2750         * misc/mntent_r.c: Likewise.
2751         * misc/getusershell.c: Likewise.
2752         * nss/nsswitch.c: Likewise.
2753         * resolv/res_hconf.c: Likewise.
2754         * resolv/res_init.c: Likewise.
2755         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
2756         * time/getdate.c: Likewise.
2757         * time/tzfile.c: Likewise.
2758         * misc/fstab.h: Undo last change.
2759         * misc/mntent.h: Likewise.
2760         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
2761         CFLAGS-fstab.c definition.
2762
2763 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
2764
2765         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
2766
2767 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
2768
2769         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
2770         returning ERANGE if this wasn't intended.
2771
2772 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
2773
2774         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
2775         function-like macros.
2776
2777 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
2778
2779         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
2780         (CFLAGS-getgrent.c): Likewise.
2781         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
2782         (CFLAGS-getpwent.c): Likewise.
2783         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
2784         (CFLAGS-getspent.c): Likewise.
2785
2786         * inet/Makefile: Add -fexceptions to CFLAGS for the various
2787         getXXent and getXXbyYY functions.
2788
2789         * locale/loadlocale.c: Use not-cancelable variants of open, close,
2790         and read.
2791
2792 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
2793
2794         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
2795         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
2796         rt_sigpending.
2797         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
2798         New prototype.
2799         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
2800         unused __syscall_ stubs.
2801         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
2802         rt_*.
2803         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
2804         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
2805         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
2806         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
2807         unused __syscall_ stubs.
2808         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
2809         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
2810         (__syscall_*): Remove unused __syscall_ stubs.
2811         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
2812         (__syscall_*): Likewise.
2813         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
2814         rt_*.
2815         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
2816         Remove unused __syscall_ stubs.
2817         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
2818         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
2819         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
2820         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
2821         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
2822         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
2823         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
2824         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
2825         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
2826         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
2827         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
2828         __syscall_* prototypes.
2829         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
2830         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
2831         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
2832         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
2833         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
2834         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
2835         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
2836         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2837         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
2838         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
2839         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
2840         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
2841         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
2842         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
2843         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
2844         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
2845         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
2846         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
2847         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
2848         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
2849         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
2850         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
2851         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
2852         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
2853         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
2854         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
2855         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
2856         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
2857         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
2858         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
2859         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
2860         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
2861         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
2862         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2863         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
2864         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
2865         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
2866         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
2867         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
2868         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
2869         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
2870         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
2871         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
2872         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
2873         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2874         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
2875         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2876         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2877         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
2878         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
2879         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
2880         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
2881         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
2882         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
2883         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
2884         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
2885         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
2886         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
2887         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
2888         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
2889         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
2890         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
2891         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
2892         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
2893         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
2894         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
2895         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2896         * sysdeps/unix/sysv/linux/execve.c: Likewise.
2897         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
2898         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
2899         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
2900         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
2901         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
2902         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
2903         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
2904         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
2905         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
2906         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
2907         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
2908         * sysdeps/unix/sysv/linux/readv.c: Likewise.
2909         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
2910         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
2911         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
2912         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
2913         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
2914         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
2915         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
2916         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
2917         * sysdeps/unix/sysv/linux/poll.c: Likewise.
2918         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
2919         * sysdeps/unix/sysv/linux/writev.c: Likewise.
2920         * sysdeps/unix/sysv/linux/pread.c: Likewise.
2921         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
2922         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
2923         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
2924         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
2925         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
2926         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
2927         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
2928         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
2929         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
2930         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
2931
2932 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
2933
2934         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
2935         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
2936         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
2937
2938 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
2939
2940         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
2941
2942         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
2943         open, close, and read.
2944
2945         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
2946         *_nocancel name.
2947
2948         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
2949
2950         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
2951         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
2952         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
2953
2954         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
2955
2956         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
2957         (CFLAGS-fstatfs.c): Likewise.
2958         (CFLAGS-statvfs.c): Likewise.
2959         (CFLAGS-fstatvfs.c): Likewise.
2960
2961 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
2962
2963         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
2964         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
2965         sysconf.
2966         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
2967         (CFLAGS-pathconf.c): Likewise.
2968         (CFLAGS-fpathconf.c): Likewise.
2969
2970         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
2971         * misc/fstab.h: Remove all __THROW.
2972         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
2973         (CFLAGS-mntent_r.c): Likewise.
2974         * misc/mntent.h: Remove most __THROW.
2975
2976         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
2977         (CFLAGS-mkstemp64.c): Likewise.
2978
2979         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
2980         around call to exec_comm.
2981         * posix/wordexp.h: Remove __THROW from wordexp.
2982         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
2983
2984         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
2985         not-cancelable functions.
2986
2987         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
2988         (CFLAGS-iofopen.c): Likewise.
2989         (CFLAGS-iofopen64.c): Likewise.
2990
2991         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
2992         functions.
2993         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
2994         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
2995
2996         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
2997         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
2998
2999 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
3000
3001         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
3002         NSS_STATUS_SUCCESS if entry was found.
3003         (getspent_next_file): Store user in blacklist after entry
3004         was found, use innetgr.
3005
3006 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
3007
3008         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
3009         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
3010
3011         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
3012         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
3013         DTV_AT_TP, optimize.
3014
3015 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3016
3017         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
3018         posix_fallocate64 at GLIBC_2.3.3.
3019         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
3020         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3021
3022 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
3023
3024         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
3025         functions.
3026
3027 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3028
3029         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
3030         Code by Richard Henderson.
3031
3032 2003-08-31  Philip Blundell  <philb@gnu.org>
3033
3034         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
3035         posix_fallocate64 at GLIBC_2.3.3.
3036
3037 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3038
3039         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
3040         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
3041
3042 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
3043
3044         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
3045         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
3046         included multiple times.
3047         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
3048         ptid, tls, ctid arguments to the kernel.
3049         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
3050         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
3051         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
3052         (__libc_sigaction): Use INLINE_SYSCALL instead of
3053         __syscall_rt_sigaction.
3054         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
3055         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
3056         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
3057         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
3058         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
3059         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
3060         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
3061         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
3062         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
3063         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
3064         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
3065         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3066         (__CLONE_SYSCALL_STRING): Define.
3067         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
3068         CFI directives.
3069         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
3070         (__CLONE_SYSCALL_STRING): Define.
3071         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
3072         Define.
3073         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
3074
3075 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
3076
3077         * sunrpc/rpc/clnt.h: Remove a few __THROW.
3078         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
3079         (CFLAGS-key_call.c): Likewise.
3080         (CFLAGS-pmap_rmt.c): Likewise.
3081         (CFLAGS-clnt_perr.c): Likewise.
3082         * sunrpc/rpc/auth.h: Remove serveral __THROW.
3083
3084         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
3085         (CFLAGS-gethstbynm_r.c): Likewise.
3086         (CFLAGS-gethstbynm2_r.c): Likewise.
3087         (CFLAGS-rcmd.c): Likewise.
3088         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
3089
3090         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
3091         (CFLAGS-argp-fmtstream.c): Likewise.
3092         * argp/argp.h: Remove a number of __THROW.
3093
3094         * misc/sys/syslog.h (vsyslog): Remove __THROW.
3095
3096         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
3097         * misc/getpass.c (getpass): Add cleanup handler to ensure the
3098         stream is closed even if the thread is canceled.
3099         (call_fclose): New function.
3100         * posix/unistd.h: Remove __THROW from getpass prototype.
3101
3102         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
3103
3104         * signal/signal.h (psignal): Remove __THROW.
3105         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
3106
3107         * misc/Makefile (CFLAGS-error.c): Define.
3108         * misc/error.c (error): Disable cancellation handling around the
3109         actual output.  The message should in any case be printed.
3110         (error_at_line): Likewise.
3111
3112         * misc/error.h: Protect parameter names with leading __.
3113
3114 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3115
3116         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
3117
3118 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3119
3120         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
3121         end.
3122
3123 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3124
3125         * libio/stdio.h: Remove a few more __THROW.
3126
3127 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3128
3129         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
3130         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
3131         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
3132         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
3133         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
3134         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
3135         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
3136         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
3137         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
3138         putwchar.c and rewind.c with exceptions.
3139         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
3140         _IO_release_lock): Define.
3141         * libio/fileops.c (_IO_new_file_underflow): Use it.
3142         * libio/fputc.c (fputc): Likewise.
3143         * libio/fputwc.c (fputwc): Likewise.
3144         * libio/freopen64.c (freopen64):
3145         * libio/freopen.c (freopen): Likewise.
3146         * libio/fseek.c (fseek): Likewise.
3147         * libio/fseeko64.c (fseeko64): Likewise.
3148         * libio/fseeko.c (fseeko): Likewise.
3149         * libio/ftello64.c (ftello64): Likewise.
3150         * libio/ftello.c (ftello): Likewise.
3151         * libio/fwide.c (fwide): Likewise.
3152         * libio/getc.c (_IO_getc): Likewise.
3153         * libio/getchar.c (getchar): Likewise.
3154         * libio/getwc.c (_IO_getwc): Likewise.
3155         * libio/getwchar.c (getwchar): Likewise.
3156         * libio/iofclose.c (_IO_new_fclose):
3157         * libio/iofflush.c (_IO_fflush): Likewise.
3158         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
3159         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3160         * libio/iofgets.c (_IO_fgets): Likewise.
3161         * libio/iofgetws.c (fgetws): Likewise.
3162         * libio/iofputs.c (_IO_fputs): Likewise.
3163         * libio/iofputws.c (fputws): Likewise.
3164         * libio/iofread.c (_IO_fread): Likewise.
3165         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
3166         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
3167         * libio/ioftell.c (_IO_ftell): Likewise.
3168         * libio/iofwrite.c (_IO_fwrite): Likewise.
3169         * libio/iogetdelim.c (_IO_getdelim): Likewise.
3170         * libio/iogets.c (_IO_gets): Likewise.
3171         * libio/ioputs.c (_IO_puts): Likewise.
3172         * libio/ioseekoff.c (_IO_seekoff): Likewise.
3173         * libio/ioseekpos.c (_IO_seekpos): Likewise.
3174         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
3175         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
3176         * libio/ioungetc.c (_IO_ungetc): Likewise.
3177         * libio/ioungetwc.c (ungetwc): Likewise.
3178         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
3179         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
3180         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
3181         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
3182         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
3183         * libio/peekc.c (_IO_peekc_locked): Likewise.
3184         * libio/putc.c (_IO_putc): Likewise.
3185         * libio/putchar.c (putchar): Likewise.
3186         * libio/putwc.c (putwc): Likewise.
3187         * libio/putwchar.c (putwchar): Likewise.
3188         * libio/rewind.c (rewind): Likewise.
3189         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
3190
3191 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3192
3193         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
3194         available in XPG4.2.
3195
3196 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
3197             Jakub Jelinek  <jakub@redhat.com>
3198
3199         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
3200         big endian arches.  Don't read beyond end of fds_bits array.
3201
3202 2003-04-27  Bruno Haible  <bruno@clisp.org>
3203
3204         * manual/message.texi (Advanced gettext functions): Add information
3205         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
3206         Add section about Lithuanian, reported by Ricardas Cepas
3207         <rch@richard.eu.org>.
3208         Add information about Croatian.
3209         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
3210         Remove remark about continuation lines that is not true for PO files.
3211         Fix formula for Slovenian, reported by Roman Maurer
3212         <roman.maurer@amis.net>.
3213
3214 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3215
3216         * math/math_private.h: Declare __copysignf.
3217         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
3218         copysignf.
3219
3220         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
3221         __signbit, and __signbitl inline functions.
3222
3223         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
3224         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
3225
3226         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
3227         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
3228
3229 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3230
3231         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
3232
3233 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3234
3235         * include/stdio.h: Add declarations for __builtin_fwrite and
3236         __builtin_fwrite_unlocked.
3237
3238 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3239
3240         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
3241         fits into allocation.  Add padding on 32-bit arches so that
3242         dirp->data is enough aligned for struct dirent64.
3243         Avoid clearing of the buffer, just clear DIR structure.
3244
3245 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
3246
3247         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
3248         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
3249
3250 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
3251
3252         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
3253
3254 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3255
3256         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
3257         to match format string.
3258         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
3259         __old_buf.
3260         (__new_semctl): Shut up warning.
3261         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
3262         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
3263
3264 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3265
3266         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
3267         link file use the real file name, not the resolved name we got by
3268         following the symlinks.
3269
3270 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3271
3272         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
3273         if the object size is large enough.
3274
3275 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3276
3277         * elf/ldconfig.c (search_dir): Treat symlink as regular file
3278         if it won't point to itself unless it is .so symlink for the linker.
3279
3280 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3281
3282         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
3283         use _mode if _IO_fwide_maybe_incompatible.
3284         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
3285         the compatibility test.
3286
3287 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3288
3289         * elf/cache.c (save_cache): Don't write beyond end of file_entries
3290         buffer.
3291         Duplicate last old cache entry if the count would be odd.
3292
3293 2003-08-25  Andreas Jaeger  <aj@suse.de>
3294
3295         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
3296         __LONG_LONG_PAIR to long.
3297
3298 2003-08-25  Philip Blundell  <philb@gnu.org>
3299
3300         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
3301         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3302
3303 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
3304
3305         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
3306         and use __libc_cleanup_region_end instead.
3307
3308 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3309
3310         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
3311
3312 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
3313
3314         * io/fcntl.h (posix_fallocate): Change type of third parameter to
3315         off_t.
3316         (posix_fallocate64): Change type of third parameter to off64_t.
3317         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
3318         * sysdeps/posix/posix_fallocate.c: Likewise.
3319         * sysdeps/generic/posix_fallocate64.c: Likewise.
3320         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
3321         code for 32-bit platforms.
3322         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
3323         posix_fallocate64.
3324         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
3325         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
3326         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
3327
3328 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
3329
3330         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
3331         the type, not to name.
3332
3333         * stdio-common/test-vfprintf.c (main): Don't write temporary file
3334         into source directory.
3335
3336         * malloc/malloc.c (_int_free): Add cheap test for some invalid
3337         block sizes.
3338
3339         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
3340         syscall name.
3341
3342 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3343
3344         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
3345         into EINVAL.
3346
3347 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
3348
3349         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
3350         (elf_machine_lazy_rel): Likewise.
3351
3352 2003-08-18  Art Haas  <ahaas@airmail.net>
3353
3354         * malloc/malloc.h: Remove unneeded ';' where closing the C++
3355         extern block.
3356
3357 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3358
3359         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
3360         loading big binaries where @gprel(sym) cannot be handled in 'add'
3361         but instead has to be used with 'movl'.
3362
3363 2003-08-17  Juergen Kreileder <jk@blackdown.de>
3364             Andreas Jaeger  <aj@suse.de>
3365
3366         * sysdeps/x86_64/bits/byteswap.h: New file.
3367
3368 2003-08-17  Andreas Jaeger  <aj@suse.de>
3369
3370         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
3371
3372 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
3373
3374         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
3375         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3376         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
3377         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3378         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
3379         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3380         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
3381         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3382         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
3383         ret_ERRVAL): Define.
3384         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
3385         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3386         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
3387         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3388         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
3389         Define.
3390         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
3391         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3392         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
3393
3394         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
3395         posix_fadvise64_64): Remove.
3396         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
3397         V flag.
3398         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
3399         Likewise.
3400         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3401         (posix_fadvise64): Likewise.
3402         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
3403         (posix_fadvise64): Likewise.
3404         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
3405         (posix_fadvise64): Likewise.
3406         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
3407         Likewise.
3408         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
3409         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
3410         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
3411         (__posix_fadvise64_l32): New function.
3412         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
3413         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
3414         posix_fadvise64@@GLIBC_2.3.3.
3415         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
3416         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
3417         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
3418         error value.
3419         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
3420
3421         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3422         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
3423
3424 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3425
3426         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
3427         (elf_machine_matches_host): Remove weak extern stuff.
3428         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
3429         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
3430         stuff.  Use GL(dl_hwcap) unconditionally.
3431
3432 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
3433
3434         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
3435         __libc_start_main branch.
3436
3437 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
3438             Andreas Jaeger  <aj@suse.de>
3439
3440         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
3441         instead of setting errno.
3442         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3443
3444 2003-08-16  Andreas Jaeger  <aj@suse.de>
3445
3446         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
3447         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
3448
3449 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
3450
3451         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
3452         off_t.
3453         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
3454         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
3455         description indicating the error value is returned, not -1.
3456         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
3457         __ASSUME_FADVISE64_64_SYSCALL.
3458         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
3459         posix_madvise in one file.  Have posix_madvise defined with error
3460         value returned.
3461         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
3462         entry.
3463         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
3464         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
3465         PSEUDO_END_ERRVAL, and ret_ERRVAL.
3466         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
3467         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3468         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
3469         posix_fadvise64.
3470
3471         * posix/Makefile (routines): Add posix_madvise.
3472         * sysdeps/generic/madvise.c: Don't define posix_madvise.
3473         * sysdeps/generic/posix_madvise.c: New file.
3474         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
3475         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
3476         Add posix_fadvise64_64.
3477
3478 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3479
3480         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
3481         3.0, not for !gcc or gcc < 3.0.
3482
3483 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3484
3485         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
3486         Address passed to test_in_mod1 and test_in_mod2 without casting.
3487         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
3488         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
3489         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
3490         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
3491
3492 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3493
3494         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
3495         Change quotes before using [].
3496
3497         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
3498
3499         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
3500         Renamed to...
3501         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
3502         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
3503         argument.  Select one of 64 locks from address bits.
3504         (atomic_compare_and_exchange_val_acq,
3505         atomic_compare_and_exchange_bool_acq): Pass memory address to
3506         __sparc32_atomic_do_{,un}lock.
3507
3508 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
3509
3510         * assert/assert.h (assert): Use !! in front of expression to allow
3511         use of pointers.
3512
3513         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
3514         Changed conversion of JIS X 0201 from using a table to calculating.
3515         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
3516         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
3517         EUC-JP-MS.
3518         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
3519         * iconvdata/CP932.irreversible: New file.
3520         * iconvdata/EUC-JP-MS.irreversible: New file.
3521         Patch