2004-10-06 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/17849
* gfortran.fortran-torture/compile/nested.f90: New test
2004-10-06 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/17849
* tree-nested.c (walk_stmt_info): Add changed field.
(convert_nonlocal_reference): Set changed to when we
change a decl to unnested decl.
<case ADDR_EXPR>: Instead of checking if the immediate part
of the ADDR_EXPR changed, check the field changed.
Use recompute_tree_invarant_for_addr_expr instead of unsetting
TREE_INVARIANT.
(convert_local_reference): Set changed to when we
change a decl to unnested decl.
<case ADDR_EXPR>: Instead of checking if the immediate part
of the ADDR_EXPR changed, check the field changed.
Also call recompute_tree_invarant_for_addr_expr on the ADDR_EXPR.
From-SVN: r88650
* c-typeck.c (convert_arguments): Take expression for called
function rather than its name. Handle ObjC selectors directly
rather than relying on warn_for_assignment to do so. Call warning
directly rather than warn_for_assignment. Use %qE in diagnostics.
Say "argument" rather than "arg" in diagnostics.
(build_function_call): Update call to convert_arguments.
testsuite:
* gcc.dg/Wconversion-2.c, gcc.dg/func-args-1.c: New tests.
From-SVN: r88630
2004-10-06 Andrew Pinski <pinskia@physics.uc.edu>
PR debug/17787
* dbxout.c (dbxout_symbol): Really handle RECORD, UNION, and
ENUMs specially instead of just saying we do.
From-SVN: r88629
2004-10-06 Daniel Berlin <dberlin@dberlin.org>
* lambda-code.c (lambda_loopnest_to_gcc_loopnest): Convert
to use FOR_EACH_SSA_USE_OPERAND iterator, and propagate_value.
2004-10-06 Daniel Berlin <dberlin@dberlin.org>
* lambda-code.c (compute_nest_using_fourier_motzkin): New
function.
(lambda_compute_auxillary_space): Split from here.
2004-10-06 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-loop-ivopts.c (expr_invariant_in_loop): Make non-static.
* tree-flow.h: Add prototype.
* lambda-code.c (invariant_in_loop_and_outer_loops): Use
expr_invariant_in_loop.
From-SVN: r88622
2004-10-06 Benjamin Kosnik <bkoz@redhat.com>
Paolo Carlini <pcarlini@suse.de>
PR libstdc++/17780
* src/mt_allocator.cc (__pool<true>::_M_reserve_block): Revert
to old locking order.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r88611
* config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Change macro to
call ia64_function_arg_boundary.
* config/ia64/ia64-protos.h (ia64_function_arg_boundary): New.
* config/ia64/ia64.c (ia64_function_arg_boundary): New.
(ia64_function_arg_advance): Do not put 128 bit floats into
FP registers.
From-SVN: r88608
* trans-stmt.c (gfc_trans_simple_do): New function.
(gfc_trans_do): Use it. Evaluate iteration bounds before entering
loop. Update comments.
testsuite/
* gfortran.dg/do_1.f90: New test.
From-SVN: r88607
* builtins.c (expand_builtin_strcpy): Delete duplicate code.
Accept an expression instead of an arglist.
(expand_builtin_stpcpy): Accept an expression instead of an
arglist.
testsuite:
* gcc.c-torture/execute/builtins/lib/strcpy.c: Don't abort when
optimizing for size.
From-SVN: r88604
PR target/16007
* doc/install.texi (*-*-solaris2*): Mention potential problem
with Sun assembler + GNU linker and C++ programs.
Document status of binutils 2.15 release.
From-SVN: r88595
2004-10-06 Paolo Carlini <pcarlini@suse.de>
* include/std/std_sstream.h (_M_sync): When the caller is
setbuf, don't trust _M_string.capacity() to be the size of
the buffer area, use _M_string.size() in this case.
* testsuite/27_io/basic_stringbuf/setbuf/char/4.cc: New.
* testsuite/27_io/basic_stringbuf/setbuf/wchar_t/4.cc: Likewise.
* include/bits/sstream.tcc (overflow): Avoid calling string::assign
unnecessarily when the current _M_string is empty.
2004-10-06 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algo.h (__reverse(bidirectional_iterator_tag)):
Avoid iterator postincrement.
(__rotate): Likewise.
* include/bits/stl_algo.h: Minor formatting tweaks.
2004-10-06 Christopher Jefferson <caj@cs.york.ac.uk>
* include/bits/stl_algo.h (__reverse(random_access_iterator_tag)):
Avoid iterator postincrement; fix swapping middle element with
itself on odd-length inputs.
From-SVN: r88593
* pretty-print.c: Include tree.h.
(pp_base_prepare_to_format): New function, logic from
text_specifies_location.
(pp_base_format_text): Use gcc_assert.
* pretty-print.h (pp_prepare_to_format): New macro.
(pp_base_prepare_to_format): Prototype.
* diagnostic.c (text_specifies_location): Delete.
(bug_report_request): Delete.
(diagnostic_set_info): Don't call text_specifies_location.
(diagnostic_action_after_output): Put text from
bug_report_request inline here. Use gcc_unreachable.
(diagnostic_report_current_function): Fix comment.
(diagnostic_report_diagnostic): Clarify logic for error recursion.
Call pp_prepare_to_format before diagnostic_starter.
(trim_filename): Use IS_DIR_SEPARATOR.
(fatal_error, internal_error): Use gcc_unreachable.
(error_recursion): Call diagnostic_action_after_output to
issue the bug_report_request message and exit.
* Makefile.in (diagnostic.o, pretty-print.o): Update dependencies.
* c-parse.in: Add list of diagnostic messages to insulate
translation template from version of yacc/bison used to
compile the grammar.
java:
* parse.y, parse-scan.y: Add list of diagnostic messages to
insulate translation template from version of yacc/bison used
to compile the grammar.
treelang:
* parse.y: Add list of diagnostic messages to insulate
translation template from version of yacc/bison used to
compile the grammar.
po:
* gcc.pot: Regenerate.
From-SVN: r88590
* c-decl.c (declspecs_add_type): Don't pedwarn for _Complex in
system headers.
testsuite:
* gcc.dg/complex-2.c, gcc.dg/complex-2.h: New test.
From-SVN: r88571
* c-decl.c (pushdecl): When an extern declaration at block scope
refers to a visible entity with internal linkage, use the old DECL
rather than the new one.
testsuite:
* gcc.c-torture/compile/20041005-1.c: New test.
From-SVN: r88570
* tree-cfg.c (cleanup_tree_cfg): Don't call
delete_unreachable_blosk() after thread_jumps().
(thread_jumps): Always remove basic blocks as they become
unreachable.
From-SVN: r88565
* builtins.c (expand_builtin_memmove): Delete duplicate code
and accept a tree type for the result.
(expand_builtin_bcopy): Accept a tree type for the result.
(fold_builtin_memmove): Accept an arglist and tree type for
the result.
From-SVN: r88563