1. 28 Jun, 2004 24 commits
    • [multiple changes] · 246d2ceb
      2004-06-28  Robert Dewar  <dewar@gnat.com>
      
      	* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
      	mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
      	mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb,
      	mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
      	a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting
      
      	* exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to
      	deal with problem of inefficient slices on machines with strict
      	alignment, when the slice is a component of a composite.
      
      	* checks.adb (Apply_Array_Size_Check): Do not special case 64-bit
      	machines, we need the check there as well.
      
      2004-06-28  Ed Schonberg  <schonberg@gnat.com>
      
      	* exp_ch5.adb (Expand_Assign_Array): Use correct condition to
      	determine safe copying direction for overlapping slice assignments
      	when component is controlled.
      
      	* sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a
      	formal derived type in the actual for a formal package are visible in
      	the enclosing instance.
      
      2004-06-28  Ed Schonberg  <schonberg@gnat.com>
      
      	PR ada/15600
      	* sem_util.adb (Trace_Components): Diagnose properly an illegal
      	circularity involving a private type whose completion includes a
      	self-referential component.
      	(Enter_Name): Use Is_Inherited_Operation to distinguish a source
      	renaming or an instantiation from an implicit derived operation.
      
      2004-06-28  Pascal Obry  <obry@gnat.com>
      
      	* mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from
      	DLL.
      	(Library_File_Name_For): Idem.
      
      2004-06-28  Matthew Gingell  <gingell@gnat.com>
      
      	* g-traceb.ads: Add explanatory note on the format of addresses
      	expected by addr2line.
      
      2004-06-28  Jerome Guitton  <guitton@act-europe.fr>
      
      	* Makefile.in: Force debugging information on s-tasdeb.adb,
      	a-except.adb and s-assert.adb needed by the debugger.
      
      2004-06-28  Vincent Celier  <celier@gnat.com>
      
      	* make.adb (Collect_Arguments_And_Compile): Change Flag1 to
      	Need_To_Build_Lib.
      	(Gnatmake): Ditto.
      
      	* mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib
      
      	* prj.adb: Minor reformatting
      	(Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2.
      
      	* prj.ads: Comment updates
      	Minor reformatting
      	(Project_Data): Change Flag1 to Need_To_Build_Lib.
      	Remove Flag2: not used.
      
      	* prj-dect.adb (Parse_Declarative_Items): Accept "null" as a
      	declaration.
      
      	* gnat_ugn.texi: Put a "null;" declaration in one project file example
      
      	* gnat_rm.texi: Document Empty declarations "null;".
      
      	* makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in
      	front of the linker options.
      	(Link_Foreign): Put the global archives and the libraries in front of
      	the linker options.
      
      2004-06-28  Javier Miranda  <miranda@gnat.com>
      
      	* rtsfind.adb: (Get_Unit_Name): Fix typo in comment
      	(RTU_Loaded): Code cleanup
      	(Set_RTU_Loaded): New procedure to register as *loaded* explicitly
      	withed predefined units.
      
      	* rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded*
      	explicitly withed predefined units.
      	Fix typo in comment
      
      	* sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded*
      	explicitly withed predefined units.
      
      From-SVN: r83789
      Arnaud Charlet committed
    • combine.c (can_combine_p): Do not prevent building insns that use and clobber… · 45da19e3
      combine.c (can_combine_p): Do not prevent building insns that use and clobber the same fixed hard register.
      
      	* combine.c (can_combine_p): Do not prevent building insns that use
      	and clobber the same fixed hard register.
      	(reg_dead_at_p): Likewise.
      
      From-SVN: r83785
      Ulrich Weigand committed
    • tree-sra.c (is_sra_candidate_ref): Remove second arg; all callers changed. · 03797ac5
      	* tree-sra.c (is_sra_candidate_ref): Remove second arg; all callers
      	changed.
      	(is_sra_candidate_complex_ref): New function.
      	(scalarize_modify_expr): Call it and check for LHS also.
      
      From-SVN: r83784
      Richard Kenner committed
    • tree-pretty-print.c (dump_function_declaration): New. · 5f2dcbe1
      	* tree-pretty-print.c (dump_function_declaration): New.
      	(dump_generic_node, case FUNCTION_TYPE): Call it.
      	(dump_generic_node, case RECORD_TYPE): Don't output dup semicolon.
      	(dump_generic_node, case DECL_EXPR): New case.
      	(dump_generic_node, case PLACEHOLDER_EXPR): Handle.
      	(print_declaration): Handle type and function declarations.
      
      From-SVN: r83782
      Richard Kenner committed
    • tree-nested.c (create_tmp_var_for): Allow ARRAY_TYPE. · 70883f72
      	* tree-nested.c (create_tmp_var_for): Allow ARRAY_TYPE.
      	(convert_nonlocal_reference, convert_local_reference): Properly
      	convert nest of handled component references.
      
      From-SVN: r83781
      Richard Kenner committed
    • localename.cc (locale::_Impl::_Impl): Slightly improve the algorithm used to name the categories. · 2d91a076
      2004-06-28  Paolo Carlini  <pcarlini@suse.de>
      
      	* src/localename.cc (locale::_Impl::_Impl): Slightly improve
      	the algorithm used to name the categories.
      
      From-SVN: r83778
      Paolo Carlini committed
    • Makefile.am: Give a .gch extension to the PCH files, not only to the directory. · e4cb0c04
      2004-06-28  Paolo Bonzini  <bonzini@gnu.org>
      
      	* include/Makefile.am: Give a .gch extension to
      	the PCH files, not only to the directory.
      	* include/Makefile.in: Regenerate.
      
      From-SVN: r83777
      Paolo Bonzini committed
    • re PR c++/16174 (deducing top-level consts) · 644d1951
      cp:
      	PR C++/16174
      	* call.c (build_temp): Declare.
      	(check_constructor_callable): New.
      	(reference_binding): Only set CHECK_COPY_CONSTRUCTOR if not for
      	CONSTRUCTOR_CALLABLE.
      	(convert_like_real, initialize_reference): Use
      	check_constructor_callable.
      	* cp-tree.h (LOOKUP_CONSTRUCTOR_CALLABLE): New.
      	(LOOKUP_*): Renumber.
      testsuite:
      	* PR C++/16174
      	* g++.dg/template/ctor4.C: New.
      
      From-SVN: r83775
      Nathan Sidwell committed
    • fix typo · a301e965
      From-SVN: r83774
      Nathan Sidwell committed
    • friend.c (add_friend): Only perform access checks when context is a class. · 0f2a66c9
      	* friend.c (add_friend): Only perform access checks when context
      	is a class.
      	* lex.c (cxx_make_type): Only create a binfo for aggregate types.
      	* parser.c (cp_parser_class_specifier): Disable access checks here
      	when parsing the body of a templated class.
      	* semantics.c (perform_or_defer_access_checks): Reorder to allow
      	NULL binfos when not checking access.
      
      From-SVN: r83771
      Nathan Sidwell committed
    • Use vector API for vbase list. · 58c42dc2
      	* cp-tree.h: Include vec.h
      	(DEF_VEC_P (tree)): New type.
      	(struct lang_type_class): Change vbase's member type.
      	(binfo_for_vbase): Declare.
      	* class.c (determine_primary_base, base_derived_from,
      	update_vtable_entry_for_fn, walk_subobject_offsets, end_of_class,
      	warn_about_ambiguous_bases, dfs_accumulate_vtbl_inits,
      	build_vtbl_initializer): Adjust.
      	* decl.c (xref_basetypes): Adjust, accumulate upper bound of
      	vbases.
      	* init.c (sort_mem_initializers, expand_member_init,
      	push_base_cleanups): Adjust.
      	* method.c (do_build_copy_constructor): Adjust.
      	* search.c (get_pure_virtuals, copied_binfo, original_binfo): Adjust.
      	(binfo_for_vbase): New.
      	* tree.c (copy_base_binfos): Adjust.
      
      From-SVN: r83770
      Nathan Sidwell committed
    • vec.h, vec.c: New, type safe vector API. · ada55151
      	* vec.h, vec.c: New, type safe vector API.
      	* Makefile.in (OBJS-common): Add vec.o.
      	(vec.o): New target.
      	(gengtype-lex.o): Depend on vec.h.
      
      From-SVN: r83769
      Nathan Sidwell committed
    • fold-const.c (fold_cond_expr_with_comparison): Add ARG1 parameter. · 2851dd68
      2004-06-28  Paolo Bonzini  <bonzini@gnu.org>
      
      	* fold-const.c (fold_cond_expr_with_comparison): Add ARG1
      	parameter.  Use it instead of ARG00 to produce the result.
      
      From-SVN: r83768
      Paolo Bonzini committed
    • 2004-06-28 Paolo Carlini <pcarlini@suse.de> · 61c53cd3
      	* config/locale/gnu/monetary_members.cc
      	(moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up
      	assignments of _M_decimal_point and _M_thousands_sep.
      
      From-SVN: r83767
      Paolo Carlini committed
    • mn10300-protos.h (legitimate_address_p): Declare. · e733134f
      * config/mn10300/mn10300-protos.h (legitimate_address_p): Declare.
      * config/mn10300/mn10300.c (legitimate_address_p): New.  Test that
      index is legitimate, compared with code moved from...
      * config/mn10300/mn10300.h (GO_IF_LEGITIMATE_ADDRESS): here.
      (REG_STRICT): Define, according to REG_OK_STRICT.
      (REGNO_IN_RANGE_P, REGNO_DATA_P, REGNO_ADDRESS_P, REGNO_SP_P,
      REGNO_EXTENDED_P, REGNO_AM33_P, REGNO_FP_P): Introduce strict
      argument.
      (REGNO_STRICT_OK_FOR_BASE_P, REGNO_STRICT_OK_FOR_BIT_BASE_P,
      REGNO_STRICT_OK_FOR_INDEX_P): New.
      (REGNO_OK_FOR_BASE_P, REG_OK_FOR_BASE_P, REGNO_OK_FOR_BIT_BASE_P,
      REG_OK_FOR_BIT_BASE_P, REGNO_OK_FOR_INDEX_P, REG_OK_FOR_INDEX_P,
      RTX_OK_FOR_BASE_P): Use them.
      
      From-SVN: r83766
      Alexandre Oliva committed
    • * parser.c (cp_parser_set_decl_spec_type): Fix thinko. · 0a73e37f
      From-SVN: r83764
      Mark Mitchell committed
    • * doc/cfg.texi (Basic Blocks): Define dominators. · 986ca4b1
      From-SVN: r83762
      Ben Elliston committed
    • re PR c++/16205 (ICE with -Wall on no-throw specifier) · 10317a4f
      2004-06-27  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c++/16205
              * g++.dg/warn/Wsequence-point-1.C: New test.
      
      From-SVN: r83760
      Andrew Pinski committed
    • re PR c++/16205 (ICE with -Wall on no-throw specifier) · e3790655
      2004-06-27  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c++/16205
              * c-common.c (warn_for_collisions_1): Warn for only decls which
              have a name.
      
      From-SVN: r83759
      Andrew Pinski committed
    • re PR c++/15145 (Implementing -Wsequence-point for C++ would be very useful) · 3ff0c9ed
      2004-06-27  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c++/15145
              * c.opt (Wsequence-point): Enable for C++ and ObjC++.
      
      From-SVN: r83758
      Andrew Pinski committed
    • re PR libfortran/12839 (incorrect IO of Inf) · 519b0e16
      2004-06-27  Bud Davis  <bdavis9659@comcast.net>
      
              PR gfortran/12839
              * io/write.c (write_float): check signbit for Infinity.
      
      From-SVN: r83757
      Bud Davis committed
    • Daily bump. · e6d6c95a
      [[Split portion of a mixed commit.]]
      
      From-SVN: r83755.2
      GCC Administrator committed
    • Daily bump. · f016316e
      [[Split portion of a mixed commit.]]
      
      From-SVN: r83754.2
      GCC Administrator committed
  2. 27 Jun, 2004 16 commits
    • Document failure. · fb76eeb0
      From-SVN: r83752
      Paul Brook committed
    • * g++.old-deja/g++.mike/p7325.C: Remove. · 59d4a500
      From-SVN: r83749
      Zack Weinberg committed
    • re PR c++/14123 (odd number of parentheses in error message) · 934d729b
      	PR c++/14123
      	* cxx-pretty-print.c (pp_cxx_ptr_operator): Properly put
      	paranthesis in case of pointers to array members.
      	* error.c (dump_type_prefix): Likewise.
      	(dump_type_suffix): Maybe issue a whitespace when printing
      	ARRAY_TYPE.
      
      From-SVN: r83748
      Gabriel Dos Reis committed
    • re PR c/14963 (Unknown types cause ICE in function declarations) · fadabebd
              2004-06-27  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c/14963
              * gcc.dg/pr14963.c: New test.
      
      From-SVN: r83747
      Andrew Pinski committed
    • re PR c/14963 (Unknown types cause ICE in function declarations) · 81ce39d6
      2004-06-27  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c/14963
              * gcc.dg/pr14963.c: New test.
      
      From-SVN: r83746
      Andrew Pinski committed
    • contribute.html: Update some links. · b80ec515
      2004-06-27  Paolo Carlini  <pcarlini@suse.de>
      
      	* docs/html/17_intro/contribute.html: Update some links.
      	* docs/html/17_intro/porting-howto.html: Likewise.
      	* docs/html/17_intro/porting-howto.xml: Likewise.
      	* docs/html/18_support/howto.html: Likewise.
      	* docs/html/21_strings/howto.html: Likewise.
      	* docs/html/27_io/howto.html: Likewise.
      	* docs/html/configopts.html: Likewise.
      	* docs/html/ext/howto.html: Likewise.
      	* docs/html/faq/index.html: Likewise.
      	* docs/html/install.html: Don't mention 2.x compilers.
      
      From-SVN: r83745
      Paolo Carlini committed
    • re PR c/14963 (Unknown types cause ICE in function declarations) · 1f4f60fc
      2004-06-27  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR c/14963
              * c-decl.c (start_decl): Check for null types.
      
      From-SVN: r83744
      Andrew Pinski committed
    • FilePermission.java (usingPerms): Removed. · 01036503
             * java/io/FilePermission.java (usingPerms): Removed.
             (actionsString): Made final.
             (cachePerms): Renamed to checkPerms.
             (checkPerms): Renamed from cachePerms. Call trim() and toLowerCase()
             on action String.
             (FilePermission): Check arguments, call checkPerms().
             (equals): Remove cachePerms() call.
             (implies): Likewise.
      
      From-SVN: r83743
      Mark Wielaard committed
    • Connection.java (userAgent): New static final field. · ce6230c4
             * gnu/java/net/protocol/http/Connection.java (userAgent): New static
             final field.
             (sendRequest): Use new field in user-agent http agent.
      
      From-SVN: r83741
      Mark Wielaard committed
    • re PR c++/16193 (Bootstrap failure in libstdc++-v3) · f84b6c96
      	PR c++/16193
      	* parser.c (cp_parser_set_decl_spec_type): Refine test for
      	redefinition of built-in types.
      
      	PR c++/16193
      	* g++.dg/parse/redef1.C: New test.
      
      From-SVN: r83740
      Mark Mitchell committed
    • 20021123-1.c: Remove duplicate of 20021110.c. · b6ded5bd
      	* gcc.c-torture/compile/20021123-1.c: Remove duplicate of
      	20021110.c.
      	* gcc.c-torture/compile/20021123-4.c: Remove duplicate of
      	20021119-1.c.
      	* gcc.dg/vmx/5-05.c, gcc.dg/vmx/5-06.c, gcc.dg/vmx/5-07.c,
      	gcc.dg/vmx/5-08.c: Remove duplicates of 5-01.c, 5-02.c, 5-03.c,
      	5-04.c.
      	* gcc.dg/builtins-42.c: Remove duplicate of builtins-41.c.
      	* g++.dg/other/new1.C: Remove duplicate of g++.dg/init/new1.C.
      	* g++.dg/init/elide3.C: Remove duplicate of elide2.C.
      	* g++.old-deja/g++.law/enum8.C: Remove duplicate of
      	g++.brendan/enum14.C.
      	* g++.old-deja/g++.mike/ns8.C: Remove duplicate of ns6.C
      	* g++.old-deja/g++.ns/alias5.C: Remove duplicate of alias1.C.
      	* g++.old-deja/g++.other/virtual1.C: Remove duplicate of
      	g++.mike/virt1.C.
      	* g++.old-deja/g++.pt/memtemp27.C: Remove duplicate of
      	memtemp24.C.
      
      From-SVN: r83739
      Joseph Myers committed
    • Formatting fixes. · fe0b9fb5
              * expr.c (class_has_finalize_method): Fix method name indentation.
              (expand_java_call): Remove K&R style parameter declaration.
              (expand_invoke): Fix statement indentation.
              (expand_java_field_op): Likewise.
              * parse-scan.y: Fix typo.
              (reset_report): Fix method name indentation.
              * parse.y (unresolved_type_p, build_expr_block): Remove extra blank
              line. Fix typos.
              * verify.c (verify_jvm_instructions): Document parameters, insert
              page break.
              * lang.c (lang_init_source): Fix method name indentation.
              * class.c (common_enclosing_context_p): Likewise.
              (emit_symbol_table): Fix parameter list indentation.
              * decl.c (add_stmt_to_compound, java_add_stmt): Remove K&R style
              parameter declaration.
              * constants.c: Fix copyright notice indentation.
              * typeck.c (find_method_in_superclasses): Fix parameter list
              indentation.
              (find_method_in_interfaces): Likewise.
              * zextract.c (makelong): Fix method name indentation.
      
      From-SVN: r83738
      Ranjit Mathew committed
    • rope: Trivial formatting fixes. · a6048f29
      2004-06-27  Paolo Carlini  <pcarlini@suse.de>
      
      	* include/ext/rope: Trivial formatting fixes.
      	* include/ext/ropeimpl.h: Likewise.
      
      From-SVN: r83737
      Paolo Carlini committed
    • rs6000.c (rs6000_legitimate_offset_address_p): Accept TOC addresses. · 60cdabab
              * config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
              Accept TOC addresses.
      
      From-SVN: r83736
      David Edelsohn committed
    • s390-protos.h (s390_load_got): Update prototype. · 585539a1
      	* config/s390/s390-protos.h (s390_load_got): Update prototype.
      	* config/s390/s390.c (struct machine_function): Add member base_reg.
      	(s390_decompose_address): Accept UNSPEC_LTREF.  Simplify logic.
      	(s390_split_branches): Annotate late pool references.
      	(annotate_constant_pool_refs): New function.
      	(find_constant_pool_ref): Work on annotated pool references.
      	(replace_constant_pool_ref): Likewise.  Use explicit base.
      	(replace_ltrel_base): Use explicit base.
      	(s390_mainpool_start): Reflect main_pool pattern change.
      	(s390_mainpool_finish): Use base register from main_pool.
      	Update calls to replace_ltrel_base and replace_constant_pool_ref.
      	(s390_chunkify_start): Use base_reg from struct machine_function.
      	(s390_chunkify_finish): Remove base_reg argument.  Update calls
      	to replace_ltrel_base and replace_constant_pool_ref.
      	(s390_reorg): Don't decide upon base register.  Update calls.
      	(s390_load_got): Remove MAYBE_DEAD handling.  Do not emit insns
      	but return sequence instead.
      	(s390_emit_prologue): Decide upon base register to use.  Annotate
      	all literal pool references.  Adapt to main_pool pattern change.
      	Update s390_load_got call; move MAYBE_DEAD handling here.
      	(s390_emit_epilogue): Annotate late literal pool references.
      	Remove barrier before register restore instruction.
      	* config/s390/s390.md (UNSPEC_LTREF): New constant.
      	("builtin_setjmp_receiver"): Update s390_load_got call.
      	("main_pool"): Explicitly reference base register.
      
      From-SVN: r83735
      Ulrich Weigand committed