Jakub Jelinek [Sat, 2 Sep 2006 06:52:24 +0000 (08:52 +0200)]
re PR c++/26917 (ICE with -frepo on invalid code)
PR c++/26917
* repo.c (repo_file): Remove.
(open_repo_file, reopen_repo_file_for_write): Return fopened
FILE * instead of setting global repo_file variable.
(init_repo): Adjust caller.
(finish_repo): Likewise. Return instead of goto out before
reopen_repo_file_for_write has been called.
re PR middle-end/27226 (Compiler looses track of alignment for emit_block_move)
2006-09-01 J"orn Rennecke <joern.rennecke@st.com>
Richard Guenther <rguenther@suse.de>
Adam Nemet <anemet@caviumnetworks.com>
PR middle-end/27226
* builtins.c (get_pointer_alignment): Handle more forms
of base addresses that can be used to derive more precise
information about alignment.
* gcc.target/mips/memcpy-1.c: New testcase.
* gcc.dg/pr27226.c: Likewise.
Co-Authored-By: Adam Nemet <anemet@caviumnetworks.com> Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r116641
* jvmti.cc (ILLEGAL_ARGUMENT): New macro.
(_Jv_JVMTI_Allocate): Use ILLEGAL_ARUMENT.
* jvmti.cc (_jvmtiEnvironments): New linked list of
JVMTI environments.
(FOREACH_ENVIRONMENT): New macro.
(_envListLock): New object to act as synchronization lock
for _jvmtiEnvironments.
(_Jv_JVMTI_DisposeEnvironment): Check for NULL environment.
Remove the environment from the list of known environments.
(_Jv_GetJVMTIEnv): Add the new environment to the list
of known environments.
Gary Benson [Fri, 1 Sep 2006 15:38:00 +0000 (15:38 +0000)]
InetAddress.java (getLocalHost): Refactor to avoid security check if getLocalHostname() fails and to provide...
2006-09-01 Gary Benson <gbenson@redhat.com>
* java/net/InetAddress.java (getLocalHost): Refactor to avoid
security check if getLocalHostname() fails and to provide more
meaningful exceptions it the security check fails.
Gary Benson [Fri, 1 Sep 2006 13:30:50 +0000 (13:30 +0000)]
InetAddress.java (getByAddress): Create Inet4Address objects when passed IPv4-mapped IPv6 addresses.
2006-09-01 Gary Benson <gbenson@redhat.com>
* java/net/InetAddress.java (getByAddress): Create Inet4Address
objects when passed IPv4-mapped IPv6 addresses.
(getByName, getAllByName): Defer to the above to ensure that the
correct Inet*Address objects are returned.
Benjamin Kosnik [Thu, 31 Aug 2006 22:20:09 +0000 (22:20 +0000)]
PR libstdc++/28671 continued
2006-08-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28671 continued
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't use
CXXFLAGS when checking for atomic builtins.
* configure: Regenerate.
* include/bits/atomicity.h: Revert.
Roger Sayle [Thu, 31 Aug 2006 17:35:32 +0000 (17:35 +0000)]
re PR other/22313 (profiledbootstrap is broken on the mainline)
PR other/22313
* dwarf2out.c (add_fde_cfi): Use a set_loc if the current label is
NULL, otherwise use an advance_loc4 to adjust relative to the
current label.
(output_cfi) <DW_CFA_set_loc>: Update the current label.
(dwarf2out_switch_text_section): Reset the current label to avoid
using advance_loc4 over section boundaries.
Corinna Vinschen [Wed, 30 Aug 2006 13:48:49 +0000 (13:48 +0000)]
configure.in: Never build newlib for a Mingw host.
2006-08-30 Corinna Vinschen <corinna@vinschen.de>
* configure.in: Never build newlib for a Mingw host.
Never build newlib as Mingw target library.
Test the existence of winsup/cygwin for building a Cygwin newlib,
rather than just winsup.
Add winsup/mingw and winsup/w32api paths to FLAGS_FOR_TARGET if
building a Mingw target.
* configure: Regenerate.
Zdenek Dvorak [Wed, 30 Aug 2006 08:14:29 +0000 (10:14 +0200)]
re PR rtl-optimization/27735 (ICE at -O3 caused by loop unswitching)
PR rtl-optimization/27735
* cfgloopmanip.c (fix_loop_placements, fix_bb_placements, unloop):
Add new argument to keep track of whether an irreducible region
was affected. All callers changed.
(fix_irreducible_loops): Removed.
(remove_path): Call mark_irreducible_loops if EDGE_IRREDUCIBLE_LOOP
flags were invalidated.
Paul Thomas [Wed, 30 Aug 2006 05:18:36 +0000 (05:18 +0000)]
re PR fortran/28885 (ICE passing components of array of derived type)
2006-08-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28885
REGRESSION FIX
* trans-expr.c (gfc_conv_aliased_arg): Ensure that the temp
declaration is retained for INTENT(OUT) arguments.
PR fortran/28873
REGRESSION FIX
PR fortran/20067
* resolve.c (resolve_generic_f): Make error message more
comprehensible.
(resolve_generic_s): Restructure search for specific procedures
to be similar to resolve_generic_f and change to similar error
message. Ensure that symbol reference is refreshed, in case
the search produces a NULL.
(resolve_specific_s): Restructure search, as above and as
resolve_specific_f. Ensure that symbol reference is refreshed,
in case the search produces a NULL.
PR fortran/25077
PR fortran/25102
* interface.c (check_operator_interface): Throw error if the
interface assignment tries to change intrinsic type assigments
or has less than two arguments. Also, it is an error if an
interface operator contains an alternate return.
PR fortran/24866
* parse.c (gfc_fixup_sibling_symbols): Do not modify the symbol
if it is a dummy in the contained namespace.
2006-08-30 Paul Thomas <pault@gcc.gnu.org>
PR fortran/28885
* gfortran.dg/aliasing_dummy_2.f90: New test.
PR tree-optimization/17506
* tree-ssa.c (warn_uninit): If warning about a location outside of
the current function, note where the variable was declared.
Volker Reichelt [Mon, 28 Aug 2006 22:34:55 +0000 (22:34 +0000)]
re PR c++/28860 (Trouble with bound template template parameter in specialization)
PR c++/28860
* cp-tree.h (maybe_process_partial_specialization): Return
tree instead of void.
* parser.c (cp_parser_class_head): Use return value of
maybe_process_partial_specialization.
* pt.c (maybe_process_partial_specialization): Return error_mark_node
for broken specializations, TYPE otherwise. Check for template
template parameters.
Ian Lance Taylor [Sun, 27 Aug 2006 21:42:55 +0000 (21:42 +0000)]
re PR other/28797 (Problems with demangling (__cxa_demangle()))
PR other/28797
* cp-demangle.c (d_pointer_to_member_type): Do add a substitution
for a qualified member which is not a function.
* testsuite/demangle-expected: Add test case.
Mark Mitchell [Sun, 27 Aug 2006 17:45:25 +0000 (17:45 +0000)]
re PR c++/28058 (ICE in inline_forbidden_p)
PR c++/28058
* pt.c (register_specialization): Return error_mark_node for
specialization-after-instantiation.
* decl2.c (mark_used): Mark the main function used when one of its
clones is used.
PR c++/28058
* g++.dg/template/spec31.C: New test.
Paolo Carlini [Sun, 27 Aug 2006 15:19:23 +0000 (15:19 +0000)]
re PR libstdc++/28830 (FAIL: tr1/2_general_utilities/memory/shared_ptr/thread/lockfree_weaktoshared.cc)
2006-08-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28830
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
lockfree_weaktoshared.cc: Rename to...
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
default_weaktoshared.cc: ... this; test the default base class.
* testsuite/tr1/2_general_utilities/memory/shared_ptr/thread/
mutex_weaktoshared.cc: Run like the other thread tests.
Roger Sayle [Sat, 26 Aug 2006 23:51:14 +0000 (23:51 +0000)]
tree.h (CASE_LOW_SEEN, [...]): New macros for manipulating temporary visit flags on CASE_LABEL_EXPRs.
* tree.h (CASE_LOW_SEEN, CASE_HIGH_SEEN): New macros for manipulating
temporary visit flags on CASE_LABEL_EXPRs.
* c-common.c (match_case_to_enum): Add function comment. Avoid
O(N) loop, by looking up both CASE_LOW_SEEN and CASE_HIGH_SEEN.
(c_do_switch_warnings): Reorganize to record CASE_LOW_SEEN and
CASE_HIGH_SEEN for enumerated types. If the switch expression is
a constant, only warn if that constant value isn't handled.
* gcc.dg/Wswitch-enum-2.c: New test case.
* gcc.dg/Wswitch-enum-3.c: Likewise.
Joseph Myers [Sat, 26 Aug 2006 21:38:46 +0000 (22:38 +0100)]
re PR c++/24009 (C++ fails to print #include stack)
PR c++/24009
* input.h (restore_input_file_stack): Declare.
(INPUT_FILE_STACK_BITS): Define.
* toplev.c (fs_p, input_file_stack_history,
input_file_stack_restored, restore_input_file_stack): New.
(push_srcloc, pop_srcloc): Check for input_file_stack_tick
overflowing INPUT_FILE_STACK_BITS bits. Save new state of stack.
(pop_srcloc): Don't free old state of stack.
Lee Millward [Sat, 26 Aug 2006 17:41:18 +0000 (17:41 +0000)]
re PR c++/28736 (ICE with friend of invalid template class)
PR c++/28736
PR c++/28737
PR c++/28738
* pt.c (process_template_parm): Store invalid template
parameters as a TREE_LIST with a TREE_VALUE of error_mark_node.
(push_inline_template_parms_recursive): Check for template
parameters having a TREE_VALUE of error_mark_node rather than
check the parameter itself.
(mangle_class_name_for_template): Likewise.
(comp_template_parms): When comparing the individual template
parameters, return 1 if either is error_mark_node.
(current_template_args): Robustify.
(redeclare_class_template): Likewise.
* g++.dg/template/void10.C: New test.
* g++.dg/template/void8.C: New test.
* g++.dg/template/void9.C: New test.
Steven G. Kargl [Sat, 26 Aug 2006 17:28:09 +0000 (17:28 +0000)]
gfortran.texi: Note variable initialization causes SAVE attribute.
2006-08-26 Tobias Burnus <burnus@net-b.de>
* gfortran.texi: Note variable initialization causes SAVE attribute.
* intrinsic.texi: Clarify support for KIND=16 and KIND=10.
Mention -std=f2003. Cross reference INQUIRE from ACCESS intrinsic.
Add missing ) in ACOS.
Bob Wilson [Sat, 26 Aug 2006 17:03:22 +0000 (17:03 +0000)]
xtensa.c (function_arg_boundary): New.
* config/xtensa/xtensa.c (function_arg_boundary): New.
(function_arg, xtensa_gimplify_va_arg_expr): Limit alignment to
STACK_BOUNDARY.
* config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Move code to new
function_arg_boundary function that limits alignment to STACK_BOUNDARY.