Andrew Pinski [Mon, 28 Jun 2004 19:20:08 +0000 (19:20 +0000)]
ptrmem4.C: Change to compile only test.
2004-06-28 Andrew Pinski <apinski@apple.com>
* g++.dg/opt/ptrmem4.C: Change to compile only test.
From-SVN: r83808
Richard Kenner [Mon, 28 Jun 2004 19:06:25 +0000 (15:06 -0400)]
Check-in change to this file that got left out of last check-in
From-SVN: r83807
Paolo Carlini [Mon, 28 Jun 2004 19:04:03 +0000 (19:04 +0000)]
cpp_type_traits.h: Move the additions to namespace __gnu_internal outside of namespace std...
2004-06-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/cpp_type_traits.h: Move the additions to
namespace __gnu_internal outside of namespace std; trivial
formatting fixes.
From-SVN: r83806
Benjamin Kosnik [Mon, 28 Jun 2004 18:31:18 +0000 (18:31 +0000)]
safe_base.h (__gnu_debug::_Safe_sequence_base): Revert -Weffc++ changes that defined copy ctory and or assignment operator.
2004-06-28 Benjamin Kosnik <bkoz@redhat.com>
* include/debug/safe_base.h (__gnu_debug::_Safe_sequence_base):
Revert -Weffc++ changes that defined copy ctory and or assignment
operator.
* libsupc++/tinfo.cc (__upcast_result): Same.
From-SVN: r83804
Ulrich Weigand [Mon, 28 Jun 2004 18:27:02 +0000 (18:27 +0000)]
* Makefile.in (vec.o): Fix dependencies.
From-SVN: r83803
Andreas Tobler [Mon, 28 Jun 2004 18:11:47 +0000 (20:11 +0200)]
Makefile.in: Fix parallel make dependency problem on vec.o.
2004-06-28 Andreas Tobler <a.tobler@schweiz.ch>
* Makefile.in: Fix parallel make dependency problem on vec.o.
From-SVN: r83802
Zack Weinberg [Mon, 28 Jun 2004 17:52:45 +0000 (17:52 +0000)]
cp-demangle.h: Declare cplus_demangle_operators...
libiberty:
* cp-demangle.h: Declare cplus_demangle_operators,
cplus_demangle_builtin_types, cplus_demangle_mangled_name, and
cplus_demangle_type as static if IN_GLIBCPP_V3.
libobjc:
* encoding.c: Rename target_flags with a #define to avoid
conflict with a prior declaration.
From-SVN: r83800
Ian Lance Taylor [Mon, 28 Jun 2004 17:36:27 +0000 (17:36 +0000)]
* testsuite/demangle-expected: Add test case.
From-SVN: r83799
Dhananjay Deshpande [Mon, 28 Jun 2004 16:23:02 +0000 (16:23 +0000)]
re PR target/14041 (H8300-elf unaligned word/longword access of zero initialized variables)
PR target/14041
* config/h8300/h8300.h (ASM_OUTPUT_ALIGNED_BSS): Define.
PR target/14041
* gcc.dg/h8300-bss-align-1.c : New.
From-SVN: r83797
Nathan Sidwell [Mon, 28 Jun 2004 16:10:55 +0000 (16:10 +0000)]
cp-tree.h (VAR_OR_FUNCTION_DECL_CHECK, [...]): Use appropriate TREE_CHECK macro.:qOR_FUNCTION_DECL_CHECK,
* cp-tree.h (VAR_OR_FUNCTION_DECL_CHECK,
VAR_FUNCTION_OR_PARM_DECL_CHECK, RECORD_OR_UNION_TYPE_CHECK,
BOUND_TEMPLATE_TEMPLATE_PARM_TYPE_CHECK): Use appropriate
TREE_CHECK macro.:qOR_FUNCTION_DECL_CHECK,
* tree.h (tree_check_failed): Make varadic.
(tree_not_check_failed): New prototype.
(tree_check2_failed, tree_check3_failed,
tree_check4_failed, tree_check5_failed): Remove.
(TREE_CHECK, TREE_CHECK2, TREE_CHECK3, TREE_CHECK4,
TREE_CHECK5): Adjust.
(TREE_NOT_CHECK, TREE_NOT_CHECK2, TREE_NOT_CHECK3, TREE_NOT_CHECK4,
TREE_NOT_CHECK5): New.
(TREE_VEC_ELT_CHECK, PHI_NODE_ELT_CHECK, TREE_OPERAND_CHECK_CODE,
TREE_RTL_OPERAND_CHECK): Adjust.
* tree.c (tree_check_failed): Make varadic.
(tree_not_check_failed): New.
(tree_check2_failed, tree_check3_failed,
tree_check4_failed, tree_check5_failed): Remove.
cp:
* cp-tree.h (VAR_OR_FUNCTION_DECL_CHECK,
VAR_FUNCTION_OR_PARM_DECL_CHECK, RECORD_OR_UNION_TYPE_CHECK,
BOUND_TEMPLATE_TEMPLATE_PARM_TYPE_CHECK): Use appropriate
TREE_CHECK macro.
From-SVN: r83796
Ian Lance Taylor [Mon, 28 Jun 2004 15:23:33 +0000 (15:23 +0000)]
re PR c++/16240 (g++ generates incorrect mangled name)
PR other/16240
* cp-demangle.c (d_expr_primary): Check for a failure return from
cplus_demangle_type.
From-SVN: r83791
Nathan Sidwell [Mon, 28 Jun 2004 15:06:06 +0000 (15:06 +0000)]
cp-tree.h (struct deferred_access): Move to ...
* cp-tree.h (struct deferred_access): Move to ...
* semantics.c (struct deferred_access): ... here. Adjust.
(deferred_access_stack): Make a VEC(deferred_access),
(deferred_access_free_list): Remove.
(deferred_access_no_check): New.
(push_deferring_access_checks, resume_deferring_access_checks,
stop_deferring_access_checks, pop_deferring_access_checks,
get_deferred_access_checks, pop_to_parent_deferring_access_checks,
perform_deferred_access_checks, perform_or_defer_access_check): Adjust.
From-SVN: r83790
Arnaud Charlet [Mon, 28 Jun 2004 14:37:05 +0000 (16:37 +0200)]
[multiple changes]
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
Ulrich Weigand [Mon, 28 Jun 2004 13:11:44 +0000 (13:11 +0000)]
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
Richard Kenner [Mon, 28 Jun 2004 12:12:51 +0000 (12:12 +0000)]
tree-sra.c (is_sra_candidate_ref): Remove second arg; all callers changed.
* 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 [Mon, 28 Jun 2004 12:08:20 +0000 (12:08 +0000)]
tree-pretty-print.c (dump_function_declaration): New.
* 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 [Mon, 28 Jun 2004 12:01:30 +0000 (12:01 +0000)]
tree-nested.c (create_tmp_var_for): Allow ARRAY_TYPE.
* 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 [Mon, 28 Jun 2004 11:55:48 +0000 (07:55 -0400)]
Add ChangeLog entry not commited due to typo in CVS command
From-SVN: r83780
Paolo Carlini [Mon, 28 Jun 2004 11:18:03 +0000 (11:18 +0000)]
localename.cc (locale::_Impl::_Impl): Slightly improve the algorithm used to name the categories.
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 Bonzini [Mon, 28 Jun 2004 11:14:44 +0000 (11:14 +0000)]
Makefile.am: Give a .gch extension to the PCH files, not only to the directory.
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
Nathan Sidwell [Mon, 28 Jun 2004 11:07:23 +0000 (11:07 +0000)]
re PR c++/16174 (deducing top-level consts)
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 [Mon, 28 Jun 2004 10:54:57 +0000 (10:54 +0000)]
fix typo
From-SVN: r83774
Nathan Sidwell [Mon, 28 Jun 2004 10:41:19 +0000 (10:41 +0000)]
friend.c (add_friend): Only perform access checks when context is a class.
* 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 [Mon, 28 Jun 2004 10:34:42 +0000 (10:34 +0000)]
Use vector API for vbase list.
* 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 [Mon, 28 Jun 2004 10:30:21 +0000 (10:30 +0000)]
vec.h, vec.c: New, type safe vector API.
* 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
Paolo Bonzini [Mon, 28 Jun 2004 10:16:00 +0000 (10:16 +0000)]
fold-const.c (fold_cond_expr_with_comparison): Add ARG1 parameter.
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 Carlini [Mon, 28 Jun 2004 09:27:18 +0000 (09:27 +0000)]
2004-06-28 Paolo Carlini <pcarlini@suse.de>
* 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
Alexandre Oliva [Mon, 28 Jun 2004 08:13:06 +0000 (08:13 +0000)]
mn10300-protos.h (legitimate_address_p): Declare.
* 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
Mark Mitchell [Mon, 28 Jun 2004 07:39:08 +0000 (07:39 +0000)]
* parser.c (cp_parser_set_decl_spec_type): Fix thinko.
From-SVN: r83764
Ben Elliston [Mon, 28 Jun 2004 04:01:27 +0000 (04:01 +0000)]
* doc/cfg.texi (Basic Blocks): Define dominators.
From-SVN: r83762
Andrew Pinski [Mon, 28 Jun 2004 02:14:53 +0000 (02:14 +0000)]
re PR c++/16205 (ICE with -Wall on no-throw specifier)
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 [Mon, 28 Jun 2004 02:11:55 +0000 (02:11 +0000)]
re PR c++/16205 (ICE with -Wall on no-throw specifier)
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 [Mon, 28 Jun 2004 01:58:24 +0000 (01:58 +0000)]
re PR c++/15145 (Implementing -Wsequence-point for C++ would be very useful)
2004-06-27 Andrew Pinski <pinskia@physics.uc.edu>
PR c++/15145
* c.opt (Wsequence-point): Enable for C++ and ObjC++.
From-SVN: r83758
Bud Davis [Mon, 28 Jun 2004 01:30:26 +0000 (01:30 +0000)]
re PR libfortran/12839 (incorrect IO of Inf)
2004-06-27 Bud Davis <bdavis9659@comcast.net>
PR gfortran/12839
* io/write.c (write_float): check signbit for Infinity.
From-SVN: r83757
GCC Administrator [Mon, 28 Jun 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83755.2
GCC Administrator [Mon, 28 Jun 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83754.2
Paul Brook [Sun, 27 Jun 2004 23:56:58 +0000 (23:56 +0000)]
Document failure.
From-SVN: r83752
Paul Brook [Sun, 27 Jun 2004 23:49:27 +0000 (23:49 +0000)]
* gfortran.fortran-torture/execute/specfics.f90: Use correct typing.
From-SVN: r83751
Zack Weinberg [Sun, 27 Jun 2004 22:42:49 +0000 (22:42 +0000)]
* g++.old-deja/g++.mike/p7325.C: Remove.
From-SVN: r83749
Gabriel Dos Reis [Sun, 27 Jun 2004 21:36:00 +0000 (21:36 +0000)]
re PR c++/14123 (odd number of parentheses in error message)
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
Andrew Pinski [Sun, 27 Jun 2004 20:58:34 +0000 (13:58 -0700)]
re PR c/14963 (Unknown types cause ICE in function declarations)
2004-06-27 Andrew Pinski <pinskia@physics.uc.edu>
PR c/14963
* gcc.dg/pr14963.c: New test.
From-SVN: r83747
Andrew Pinski [Sun, 27 Jun 2004 20:55:55 +0000 (13:55 -0700)]
re PR c/14963 (Unknown types cause ICE in function declarations)
2004-06-27 Andrew Pinski <pinskia@physics.uc.edu>
PR c/14963
* gcc.dg/pr14963.c: New test.
From-SVN: r83746
Paolo Carlini [Sun, 27 Jun 2004 20:48:48 +0000 (20:48 +0000)]
contribute.html: Update some links.
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
Andrew Pinski [Sun, 27 Jun 2004 20:47:14 +0000 (20:47 +0000)]
re PR c/14963 (Unknown types cause ICE in function declarations)
2004-06-27 Andrew Pinski <pinskia@physics.uc.edu>
PR c/14963
* c-decl.c (start_decl): Check for null types.
From-SVN: r83744
Mark Wielaard [Sun, 27 Jun 2004 19:42:19 +0000 (19:42 +0000)]
FilePermission.java (usingPerms): Removed.
* 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 [Sun, 27 Jun 2004 19:36:01 +0000 (19:36 +0000)]
Connection.java (userAgent): New static final field.
* 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 Mitchell [Sun, 27 Jun 2004 18:56:46 +0000 (18:56 +0000)]
re PR c++/16193 (Bootstrap failure in libstdc++-v3)
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
Joseph Myers [Sun, 27 Jun 2004 18:55:15 +0000 (19:55 +0100)]
20021123-1.c: Remove duplicate of
20021110.c.
* 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
Ranjit Mathew [Sun, 27 Jun 2004 18:16:49 +0000 (18:16 +0000)]
Formatting fixes.
* 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
Paolo Carlini [Sun, 27 Jun 2004 17:51:08 +0000 (17:51 +0000)]
rope: Trivial formatting fixes.
2004-06-27 Paolo Carlini <pcarlini@suse.de>
* include/ext/rope: Trivial formatting fixes.
* include/ext/ropeimpl.h: Likewise.
From-SVN: r83737
David Edelsohn [Sun, 27 Jun 2004 15:56:34 +0000 (15:56 +0000)]
rs6000.c (rs6000_legitimate_offset_address_p): Accept TOC addresses.
* config/rs6000/rs6000.c (rs6000_legitimate_offset_address_p):
Accept TOC addresses.
From-SVN: r83736
Ulrich Weigand [Sun, 27 Jun 2004 15:31:53 +0000 (15:31 +0000)]
s390-protos.h (s390_load_got): Update prototype.
* 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
Bryce McKinlay [Sun, 27 Jun 2004 15:30:06 +0000 (15:30 +0000)]
re PR java/15715 (member interfaces are always static)
2004-06-26 Bryce McKinlay <mckinlay@redhat.com>
PR java/15715.
* parse.y (create_interface): Set correct access modifiers for
interfaces.
* jcf-write.c (get_classfile_modifiers): New function.
(generate_classfile): Use get_classfile_modifiers, not
get_access_flags.
2004-06-26 Bryce McKinlay <mckinlay@redhat.com>
* parse.y (register_incomplete_type): Set JDEP_ENCLOSING for "super"
dependency to current parser context, not NULL_TREE, for top-level
classes.
(jdep_resolve_class): Enable member access check for all inner
class dependencies.
From-SVN: r83734
Roger Sayle [Sun, 27 Jun 2004 15:23:46 +0000 (15:23 +0000)]
fold-const.c (fold): Optimize ~X|X and X|~X as -1.
* fold-const.c (fold) <BIT_IOR_EXPR>: Optimize ~X|X and X|~X as -1.
<BIT_XOR_EXPR>: Optimize ~X|X and X|~X as -1.
<BIT_AND_EXPR>: Optimize ~X&X and X&~X as 0.
<TRUTH_AND_EXPR, TRUTH_ANDIF_EXPR>: Optimize !X&&X and X&&!X as false.
<TRUTH_OR_EXPR, TRUTH_ORIF_EXPR>: Optimize !X||X and !X||X as true.
<TRUTH_XOR_EXPR>: Optimize !X^X and X^X! as true. Now that
TRUTH_XOR_EXPR is a commutative tree code, don't test whether arg0
is a constant.
* gcc.dg/
20040527-1.c: New test case.
From-SVN: r83733
Gabriel Dos Reis [Sun, 27 Jun 2004 15:20:41 +0000 (15:20 +0000)]
error.c (pp_template_argument_list_start): Remove.
* error.c (pp_template_argument_list_start): Remove.
(pp_template_argument_list_end): Likewise.
(pp_separate_with_comma): Use pp_cxx_separate_with.
(reinit_global_formatting_buffer): Remove.
(pp_non_consecutive_character): Likewise.
(dump_scope): Use pp_cxx_colon_colon.
(dump_template_parameter): Use pp_cxx_identifier,
pp_cxx_tree_identifier and pp_cxx_whitespace.
(dump_templat_bindings): Replace use of pp_string with
sequence
of pp_cxx_whitespace and pp_equal.
(dump_type): Use pp_cxx_identifier, pp_cxx_tree_identifier,
pp_cxx_colon_colon, pp_cxx_whitespace throughout. Don't set
padding here.
(dump_aggr_type): Use pp_cxx_identifier amd
pp_cxx_tree_identifier.
(dump_type_prefix): Don't set padding. Use pp_cxx_whitespace,
pp_cxx_left_parent, pp_cxx_colon_colon and pp_cxx_star
troughout.
(dump_type_suffix): Use pp_cxx_right_paren,
pp_cxx_left_bracket,
pp_cxx_right_bracket, pp_cxx_identifier throughout,
(dump_decl): Likewise.
(dump_template_decl): Likewise.
(dump_function_decl): Likewise. Set padding as appropriate.
(dump_parameters): Use pp_cxx_left_paren, pp_cxx_identifier
and
pp_cxx_right_paren.
(dump_exception_spec): Likewise.
(dump_function_name): Use pp_cxx_tree_identifier and
pp_cxx_identifier.
(dump_template_parms): Use pp_cxx_begin_template_argument_list
and
pp_cxx_end_template_argument_list.
(dump_expr): Use pp_cxx_left_paren, pp_cxx_right_paren,
pp_cxx_colon_colon, pp_cxx_identifier, pp_cxx_tree_identifier
and
pp_cxx_whitespace throughout.
(dump_binary_op): Use pp_cxx_whitespace, pp_cxx_left_paren and
pp_cxx_right_paren.
(dump_unary_op): Likewise.
(reinit_cxx_pp): New function.
(type_as_string); Use it.
(expr_as_string): Likewise.
(decl_as_string); Likewise.
(context_as_string): Likewise.
(lang_decl_name): Likewise.
(decl_to_string): Likewise.
(expr_to_string): Likewise.
(parm_to_string): Likewise.
(type_to_string): Likewise.
(args_to_string): Likewise.
(cv_to_string): Likewise.
From-SVN: r83732
Mark Wielaard [Sun, 27 Jun 2004 12:10:12 +0000 (12:10 +0000)]
[multiple changes]
2004-06-27 Mark Wielaard <mark@klomp.org>
* java/awt/EventQueue.java (postEvent): Throw NullPointerException
when argument is null.
2004-06-26 Mark Wielaard <mark@klomp.org>
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c
(ok_clicked): Use Ljava/lang/String; not Ljava.lang.String; in JNI
GetMethodID call.
(cancel_clicked): Likewise.
From-SVN: r83731
Giovanni Bajo [Sun, 27 Jun 2004 11:21:13 +0000 (11:21 +0000)]
re PR bootstrap/15627 (Sun CC cannot bootstrap GCC)
PR bootstrap/15627
* engine/flowrow-sort.c (update_upper_bound): Converted comment to
C-style.
(flowrow_inclusion): Likewise.
(flowrow_extract_field): Unnest field_eq.
* engine/setif-sort.c (search_ubs): Unnest search_ubs_aux.
(search_lbs): Unnest search_lbs_aux.
(setif_inclusion): Unnest collapse_cycle_lower, collapse_cycle_upper,
update_lower_bound, update_upper_bound.
From-SVN: r83730
Mark Mitchell [Sun, 27 Jun 2004 03:03:55 +0000 (03:03 +0000)]
cp-tree.h (cp_cv_quals): New type.
* cp-tree.h (cp_cv_quals): New type.
(cp_declarator): Use it instead of "tree" as appropriate.
(grok_method_quals): Adjust prototype.
(grokclassfn): Likewise.
(do_friend): Likewise.
* decl.c (grokfndecl): Use cp_cv_quals, not tree.
(grokdeclarator): Likewise.
* decl2.c (grok_method_quals): Likewise.
(grokclassfn): Likewise.
* friend.c (do_friend): Likewise.
* method.c (implicitly_declare_fn): Adjust call to grokclassfn.
* parser.c (make_call_declarator): Use cp_cv_quals, not tree.
(make_pointer_declarator): Likewise.
(make_reference_declarator): Likewise.
(make_ptrmem_declarator): Likewise.
(cp_parser_ptr_operator): Likewise.
(cp_parser_cv_qualifier_seq_opt): Likewise.
(cp_parser_cv_qualifier_opt): Remove.
(cp_parser_new_declarator_opt): Adjust call to
cp_parser_ptr_operator.
(cp_parser_conversion_declaration_opt): Likewise.
(cp_parser_declarator): Use cp_cv_quals, not tree.
(cp_parser_direct_declarator): Likewise.
From-SVN: r83729
Bryce McKinlay [Sun, 27 Jun 2004 00:34:57 +0000 (00:34 +0000)]
parse.y (qualify_and_find): Pass type decl, not identifier, to load_class.
* parse.y (qualify_and_find): Pass type decl, not identifier, to
load_class.
From-SVN: r83728
GCC Administrator [Sun, 27 Jun 2004 00:16:15 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r83726
Richard Kenner [Sat, 26 Jun 2004 21:30:01 +0000 (17:30 -0400)]
ada-tree.def (DECL_STMT): Deleted.
2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* ada-tree.def (DECL_STMT): Deleted.
* ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT.
(DECL_STMT_VAR): Deleted.
* decl.c: add_decl_stmt now add_decl_expr.
* gigi.h: Likewise.
* trans.c: Likewise.
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
(gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus.
(add_stmt): Only handle padded type here.
(add_stmt_with_node): Allow gnat_node to not be present.
(gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null.
(gnat_gimplify_stmt, case DECL_STMT): Deleted.
(gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer,
make a SAVE_EXPR for the entire fat pointer.
* utils.c (pushdecl): Walk a DECL_EXPR in global case.
(create_index_type): Make a DECL_EXPR.
(end_subprog_body): Don't call allocate_struct_function here but
do clear cfn.
From-SVN: r83722
Richard Kenner [Sat, 26 Jun 2004 21:11:23 +0000 (21:11 +0000)]
c-common.c (c_safe_from_p, [...]): Deleted.
2004-06-26 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* c-common.c (c_safe_from_p, c_walk_subtrees): Deleted.
* c-common.def (DECL_STMT): Remove.
* c-common.h (DECL_STMT_DECL): Deleted.
(COMPOUNT_LITERAL_EXPR_DECL): Use DECL_EXPR_DECL.
(c_safe_from_p, c_walk_subtrees): Deleted.
* c-decl.c, c-parse.in, c-pretty-print.c: DECL_STMT now DECL_EXPR.
* c-dump.c (c_dump_tree, case DECL_STMT): Deleted.
* c-gimplify.c (gimplify_decl_stmt): Deleted.
(gimplify_compound_literal_expr): Use DECL_EXPR_DECL
and gimplify_and_add.
(c_gimplify_expr, case DECL_EXPR): New case.
(c_gimplify_expr, case DECL_STMT): Deleted.
* c-lang.c (LANG_HOOKS_SAFE_FROM_P): Likewise.
(LANG_HOOKS_TREE_INLINING_WALK_SUBTREES): Likewise.
* expr.c (safe_from_p, case 's'): New case.
* gimplify.c (gimplify_decl_expr): New function.
(gimplify_expr, case DECL_EXPR): New case.
* tree-inline.c (walk_tree): Walk into all fields of a type and
decl only if they are in a DECL_EXPR.
(mark_local_for_remap_r): Minor code cleanup.
* tree-outof-ssa.c (discover_nonconstant_array_refs_r): Add else.
* tree.c (has_cleanups, case DECL_EXPR): New case.
* tree.def (DECL_EXPR): New code.
* tree.h (DECL_EXPR_DECL): New macro.
* objc/objc-lang.c (LANG_HOOKS_SAFE_FROM_P): Deleted.
From-SVN: r83721
Bryce McKinlay [Sat, 26 Jun 2004 20:42:01 +0000 (20:42 +0000)]
re PR java/15734 (internal compiler error: Segmentation fault)
PR java/15734
* expr.c (expand_java_field_op): Ensure that target class for static
field access has been loaded.
From-SVN: r83720
Bryce McKinlay [Sat, 26 Jun 2004 20:40:31 +0000 (20:40 +0000)]
PR java/1207, java/16178
PR java/1207, java/16178
* jcf-parse.c (load_class): Return immediately if passed a type decl
where CLASS_FROM_SOURCE_P is set. Remove FIXME.
* parse.y (do_resolve_class): Remove checks for CLASS_FROM_SOURCE_P
before calling load_class.
(qualify_and_find): Likewise.
(find_in_imports_on_demand): Likewise.
(find_applicable_accessible_methods_list): Likewise.
Co-Authored-By: Ranjit Mathew <rmathew@hotmail.com>
From-SVN: r83719
Andrew Pinski [Sat, 26 Jun 2004 20:40:31 +0000 (20:40 +0000)]
re PR bootstrap/13334 (Bootstrap failure: libiberty/fibheap.c: LONG_MIN undeclared)
2004-06-26 Andrew Pinski <pinskia@physics.uc.edu>
PR 13334
* doc/install.texi: Document non-standard CFLAGS and bootstrap
failures and warnings.
From-SVN: r83718
Matthias Klose [Sat, 26 Jun 2004 20:37:03 +0000 (20:37 +0000)]
libtool-version: Fix typo in revision/age.
2004-06-26 Matthias Klose <doko@debian.org>
* libtool-version: Fix typo in revision/age.
From-SVN: r83717
Zack Weinberg [Sat, 26 Jun 2004 17:39:40 +0000 (17:39 +0000)]
re PR preprocessor/15933 (Caching of include files breaks compilation)
PR 15933
Partially revert patch of 2004-06-05.
* files.c (search_cache): Remove pfile argument. Don't check
for file that would be found by "" or <> search here...
(_cpp_find_file): ...do it here, before calling find_file_in_dir.
Do not apply directory-of-current-file correction to files
found by this check. Rearrange code slightly.
From-SVN: r83714
Tobias Schlüter [Sat, 26 Jun 2004 12:01:43 +0000 (14:01 +0200)]
Andrew Vaught <andyv@firstinter.net>
2004-06-26 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Andrew Vaught <andyv@firstinter.net>
* decl.c (contained_procedure): New function.
(match_end): Verify correctness of END STATEMENT in
all cases.
Also fix two typos in Kenner's ChangeLog
From-SVN: r83710
Bud Davis [Sat, 26 Jun 2004 11:49:06 +0000 (11:49 +0000)]
re PR libfortran/16196 (gfortran fails to create file with OPEN(...,status='REPLACE'))
2004-06-26 Bud Davis <bdavis9659@comcast.net>
PR gfortran/16196
* unix.c(regular_file): create file if it does not exist.
* gfortran.fortran-torture/execute/open_replace.f90: New test case.
From-SVN: r83709
Tobias Schlüter [Sat, 26 Jun 2004 11:48:55 +0000 (13:48 +0200)]
Andrew Vaught <andyv@firstinter.net>
2004-06-25 Tobias Schlueter <tobias.schlueter@physik.uni-muenchen.de>
Andrew Vaught <andyv@firstinter.net>
PR fortran/15190
* decl.c (gfc_match_type_spec), io.c (match_io), parse.c
(decode_statement): Enforce required space in free-form.
Co-Authored-By: Andrew Vaught <andyv@firstinter.net>
From-SVN: r83708
Jan Hubicka [Sat, 26 Jun 2004 10:23:05 +0000 (12:23 +0200)]
re PR c++/14865 (No instantiation of VTT at -O1)
PR C++/14865
* decl2.c (maybe_emit_vtables): Always import_export_vtable for the
reachability analysis.
From-SVN: r83707
Andrew Haley [Sat, 26 Jun 2004 10:10:25 +0000 (10:10 +0000)]
emit-rtl.c (set_mem_attributes_minus_bitpos): Check TREE_THIS_NOTRAP when setting MEM_NOTRAP_P.
2004-06-26 Andrew Haley <aph@redhat.com>
* emit-rtl.c (set_mem_attributes_minus_bitpos): Check
TREE_THIS_NOTRAP when setting MEM_NOTRAP_P.
* tree-eh.c (tree_could_trap_p): Check TREE_THIS_NOTRAP.
* tree.h (TREE_THIS_NOTRAP): New.
From-SVN: r83706
Paolo Carlini [Sat, 26 Jun 2004 08:42:38 +0000 (08:42 +0000)]
re PR libstdc++/16210 ([3.4 only] gratuitously omits "long long" I/O)
2004-06-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/16210
* acinclude.m4 (GLIBCXX_ENABLE_LONG_LONG): Do not check for the
availability of strto(u)ll, not used anymore in the iostreams.
* configure: Regenerate.
From-SVN: r83705
Kaz Kojima [Sat, 26 Jun 2004 05:25:38 +0000 (05:25 +0000)]
genattrtab.c (write_test_expr): Put a unsigned cast before the first operand for GEU, GTU, LEU and LTU.
* genattrtab.c (write_test_expr): Put a unsigned cast before
the first operand for GEU, GTU, LEU and LTU.
From-SVN: r83704
Kazu Hirata [Sat, 26 Jun 2004 05:03:55 +0000 (05:03 +0000)]
c-typeck.c, [...]: Fix comment typos.
* c-typeck.c, cfgexpand.c, ddg.c, ddg.h, df.c, fold-const.c,
gcov.c, gimplify.c, modulo-sched.c, passes.c, tree-cfg.c,
tree-mudflap.c, tree-nrv.c, tree-outof-ssa.c, tree-ssa-dom.c,
tree-ssa-dse.c, tree-ssa-operands.c, tree-ssa-pre.c,
tree-tailcall.c: Fix comment typos. Follow spelling
conventions.
From-SVN: r83703
Eric Christopher [Sat, 26 Jun 2004 03:51:29 +0000 (03:51 +0000)]
mips.md: Add back scheduling exclusion info.
2004-06-25 Eric Christopher <echristo@redhat.com>
* config/mips/mips.md: Add back scheduling exclusion info.
From-SVN: r83699
Andreas Tobler [Sat, 26 Jun 2004 03:44:38 +0000 (05:44 +0200)]
2004-06-26 Andreas Tobler <a.tobler@schweiz.ch>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
(init_dpi_conversion_factor): Check for int_dpi < 0 in case gtk-xft-dpi
can not calculate the right value.
(dpi_changed_cb): Likewise. Mark *pspec as unused.
From-SVN: r83698
Roger Sayle [Sat, 26 Jun 2004 01:43:57 +0000 (01:43 +0000)]
ifcvt.c (seq_contains_jump): Delete function.
* ifcvt.c (seq_contains_jump): Delete function.
(end_ifcvt_sequence): Replace call to seq_contains_jump with an
inline test for a jump instruction in the existing "insn" loop.
(block_fallthru): Document function.
From-SVN: r83697
GCC Administrator [Sat, 26 Jun 2004 00:17:34 +0000 (00:17 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83695.2
GCC Administrator [Sat, 26 Jun 2004 00:16:59 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r83694.2
Kelley Cook [Fri, 25 Jun 2004 23:06:47 +0000 (23:06 +0000)]
re PR other/15194 (Fastjar configure needlessly fails without long long)
2004-06-25 Kelley Cook <kcook@gcc.gnu.org>
PR other/15194
* configure.ac: Add check for long long.
* jartool.h: Check for long long before using it.
* configure: Regenerate
* config.h.in: Regenerate.
From-SVN: r83690
Philip Blundell [Fri, 25 Jun 2004 21:48:38 +0000 (21:48 +0000)]
re PR tree-optimization/15089 (local register variable with a specified register is bad)
PR wrong-code/15089
* loop.c (scan_loop): Do not move user-specified register
assignments.
From-SVN: r83684
DJ Delorie [Fri, 25 Jun 2004 21:24:21 +0000 (17:24 -0400)]
c-common.h (warn_cast_qual, [...]): Remove explicit declarations.
* c-common.h (warn_cast_qual, warn_missing_format_attribute,
warn_pointer_arith, warn_missing_prototypes, warn_parentheses,
warn_missing_braces, warn_sign_compare, warn_long_long,
warn_redundant_decls, warn_float_equal, warn_char_subscripts,
warn_conversion, warn_format_y2k, warn_format_extra_args,
warn_format_zero_length, warn_format_nonliteral,
warn_format_security, mesg_implicit_function_declaration,
warn_bad_function_cast, warn_traditional,
warn_declaration_after_statement, warn_strict_prototypes,
warn_missing_declarations, warn_nested_externs,
warn_sequence_point, warn_init_self, warn_div_by_zero,
warn_implicit_int, warn_nonnull, warn_old_style_definition,
warn_selector, warn_undeclared_selector, warn_protocol,
warn_abi, warn_invalid_offsetof, warn_ctor_dtor_privacy,
warn_overloaded_virtual, warn_nonvdtor, warn_reorder,
warn_synth, warn_pmf2ptr, warn_ecpp, warn_sign_promo,
warn_old_style_cast, warn_nontemplate_friend,
warn_deprecated): Remove explicit declarations.
* c-common.c: Likewise, remove explicit definitions.
* c-opts.c: Likewise, remove explicit assignments.
* c.opts: Likewise, add implicit declare/define/assign.
From-SVN: r83680
Richard Kenner [Fri, 25 Jun 2004 20:47:45 +0000 (20:47 +0000)]
gimplify.c (lookup_tmp_var): Set TREE_READONLY in is_formal case.
* gimplify.c (lookup_tmp_var): Set TREE_READONLY in is_formal case.
(build_addr_expr_with_type): Deleted.
(build_addr_expr): Deleted; callers changed to build_fold_addr_expr.
(gimplify_compound_lval): Make two passes over reference nest.
From-SVN: r83678
Richard Kenner [Fri, 25 Jun 2004 20:33:09 +0000 (20:33 +0000)]
tree-nested.c (build_addr): Merge real/imagpart with handled_component_p.
* tree-nested.c (build_addr): Merge real/imagpart with
handled_component_p.
(convert_nonlocal_reference, convert_local_reference): Process extra
args to COMPONENT_REF and ARRAY_REF.
* tree-outof-ssa.c (discover_nonconstant_array_refs_r): Check for
lower bound and field offset being constant.
From-SVN: r83677
Mark Mitchell [Fri, 25 Jun 2004 19:44:49 +0000 (19:44 +0000)]
cp-mudflap.c (mflang_flush_calls): Fix thinkos resulting from 2004-06-23 change.
* cp-mudflap.c (mflang_flush_calls): Fix thinkos resulting from
2004-06-23 change.
From-SVN: r83675
Mark Mitchell [Fri, 25 Jun 2004 19:17:49 +0000 (19:17 +0000)]
re PR c++/16129 (g++.old-deja/g++.eh/catch[35679]*.C)
PR wrong-code/16129
* alias.c (get_alias_set): Adjust setting of
DECL_POINTER_ALIAS_SET for pointers to aggregates.
From-SVN: r83674
Richard Kenner [Fri, 25 Jun 2004 19:12:02 +0000 (19:12 +0000)]
tree-inline.c (remap_type): Arrange to have just one pointer type for each type, mode, and 'can alias' value.
* tree-inline.c (remap_type): Arrange to have just one pointer type
for each type, mode, and 'can alias' value.
(setup_one_parameter): Remap type when making VAR_DECL for PARM_DECL.
(estimate_num_insns_1): Minor code reformatting.
(inline_forbidden_p_1): Likewise; add; missing return statement.
From-SVN: r83672
Roger Sayle [Fri, 25 Jun 2004 18:40:07 +0000 (18:40 +0000)]
re PR middle-end/15825 (if-cvt optimisation patch noce_try_sign_mask breaks apple-ppc-darwin port)
PR middle-end/15825
* ifcvt.c (unshare_ifcvt_sequence): Rename to end_ifcvt_sequence.
Use get_isns and end_sequence instead of accepting a seq argument.
Scan the instruction sequence for unrecognizable or jump insns.
(noce_try_move, noce_try_store_flag, noce_try_store_flag_constants,
noce_try_addcc, noce_try_store_flag_mask, noce_try_cmove,
noce_try_cmove_arith, noce_try_minmax, noce_try_abs,
noce_try_sign_mask): Use end_ifcvt_sequence to factor common code.
* gcc.dg/pr15825-1.c: New test case.
From-SVN: r83671
Jeff Law [Fri, 25 Jun 2004 18:31:56 +0000 (12:31 -0600)]
gimplify.c (gimplify_compound_lval): Reset TREE_SIDE_EFFECTS after gimplifying the innermost component.
* gimplify.c (gimplify_compound_lval): Reset TREE_SIDE_EFFECTS
after gimplifying the innermost component.
In
From-SVN: r83670
Richard Kenner [Fri, 25 Jun 2004 18:30:09 +0000 (18:30 +0000)]
tree-dfa.c (get_virtual_var): Merge real/imaginary parts with handled_component_p handling.
* tree-dfa.c (get_virtual_var): Merge real/imaginary parts with
handled_component_p handling.
* tree-gimple.c (get_base_address): Likewise and fix typo that
caused both recursion and looping.
From-SVN: r83669
Richard Sandiford [Fri, 25 Jun 2004 18:24:51 +0000 (18:24 +0000)]
re PR target/16176 (Miscompilation of unaligned data in MIPS backend (SB1 flavor))
PR target/16176
* config/mips/mips.c (mips_expand_unaligned_load): Use a temporary
register for the destination of the lwl or ldl.
From-SVN: r83668
Richard Kenner [Fri, 25 Jun 2004 18:17:53 +0000 (18:17 +0000)]
tree-cfg.c (verify_expr): Add macro CHECK_OK.
* tree-cfg.c (verify_expr): Add macro CHECK_OK.
Properly test for nest of handled_components in LHS context.
From-SVN: r83666
Benjamin Kosnik [Fri, 25 Jun 2004 17:45:42 +0000 (17:45 +0000)]
re PR libstdc++/16182 (wctype.h not included by c++locale_internal.h)
2004-06-25 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/16182
* linkage.m4 (GLIBCXX_CHECK_BUILTIN_MATH_DEC): Revert to
AC_DEFINE_UNQUOTED.
* configure: Regenerate.
From-SVN: r83664
Devang Patel [Fri, 25 Jun 2004 17:36:50 +0000 (10:36 -0700)]
* doc/tree-ssa.texi: Document info about MODIFY_EXPR's type
From-SVN: r83662
Frank Ch. Eigler [Fri, 25 Jun 2004 17:17:51 +0000 (17:17 +0000)]
* quick build fix
2004-06-25 Frank Ch. Eigler <fche@redhat.com>
* ansidecl.h, libiberty.h: New dummy files for building splay-tree.
* config.h.in: Regenerated.
From-SVN: r83661
Paul Brook [Fri, 25 Jun 2004 17:15:46 +0000 (17:15 +0000)]
target-def.h (TARGET_CXX_GUARD_TYPE, [...]): Define.
gcc/
* target-def.h (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT,
TARGET_CXX): Define.
(TARGET_INITIALIZER): Use TARGET_CXX.
* target.h (struct gcc_target): Add struct cxx.
* targhooks.h (default_cxx_guard_type): Add prototype.
* targhooks.c (default_cxx_guard_type): New function.
* config/arm/arm.c (TARGET_CXX_GUARD_TYPE, TARGET_CXX_GUARD_MASK_BIT):
Define.
(arm_cxx_guard_type, arm_cxx_guard_mask_bit): New functions.
* doc/tm.texi: Document TARGET_CXX_GUARD_TYPE and
TARGET_CXX_GUARD_MASK_BIT.
gcc/cp/
* decl2.c (get_guard): Call targetm.cxx.guard_type.
(get_guard_bits, get_guard_cond): Call targetm.cxx.guard_mask_bit.
libstdc++/
* libsupc++/cxxabi.h: Define __ARM_EABI__
(__guard): Use it.
* libsupc++/guard.h (__cxa_guard_acquire, __cxa_guard_release): Ditto.
From-SVN: r83660
Arnaud Charlet [Fri, 25 Jun 2004 16:39:33 +0000 (18:39 +0200)]
revert: [multiple changes]
2004-06-25 Pascal Obry <obry@gnat.com>
* makegpr.adb (Build_Library): Remove parameter Lib_Address and
Relocatable from Build_Dynamic_Library call.
* gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
Relocatable are now synonym.
* Makefile.in: Use s-parame-mingw.adb on MingW platform.
* mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
call.
* mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
Lib_Address and Relocatable.
(Default_DLL_Address): Removed.
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
(Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
(Default_DLL_Address): Removed.
* mlib-tgt-mingw.adb: Ditto.
(Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
* s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
the initial thread stack size.
* a-strmap.ads: Move package L to private part as it is not used in
the spec. Found while reading code.
2004-06-25 Olivier Hainque <hainque@act-europe.fr>
* tracebak.c: Introduce support for a GCC infrastructure based
implementation of __gnat_backtrace.
* raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
any more. Use accessors instead. This eases maintenance and relaxes
some alignment constraints.
(_GNAT_Exception structure): Remove the Ada specific fields
(EID_For, Adjust_N_Cleanups_For): New accessors, exported by
a-exexpr.adb.
(is_handled_by, __gnat_eh_personality): Replace component references to
exception structure by use of the new accessors.
* init.c (__gnat_initialize): Adjust comments to match the just
reverted meaning of the -static link-time option.
* adaint.c (convert_addresses): Arrange not to define a stub for
mips-irix any more, as we now want to rely on a real version from a
recent libaddr2line.
* a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
the personality routine can use them and not have to rely on a C
counterpart of the record anymore. This simplifies maintenance and
relaxes the constraint of having Standard'Maximum_Alignment match
BIGGEST_ALIGNMENT.
Update comments, and add a section on the common header alignment issue.
2004-06-25 Geert Bosch <bosch@gnat.com>
* a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
2004-06-25 Robert Dewar <dewar@gnat.com>
* gnat_rm.texi: Fix section on component clauses to indicate that the
restriction on byte boundary placement still applies for bit packed
arrays.
Add comment on stack usage from Initialize_Scalars
* gnat_ugn.texi: Add documentation for -gnatyLnnn
* stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
limiting nesting level.
* usage.adb: Add line for -gnatyLnnn switch
* g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
sem_ch13.adb, exp_aggr.adb: Minor reformatting
* sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
type as well as on the subtype. This corrects a problem in freeze in
setting alignments of atomic types.
* sem_eval.ads: Minor comment typo fixed
* par-util.adb (Push_Scope_Stack): Check for violation of max nesting
level. Minor reformatting.
* fname.adb (Is_Predefined_File_Name): Require a letter after the
minus sign. This means that file names like a--b.adb will not be
considered predefined.
* freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
record Test new flag and give diagnostic for bad component clause.
(Freeze_Entity): Set alignment of array from component alignment in
cases where this is safe to do.
* exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
arrays.
* cstand.adb: (Create_Standard): Set alignment of String to 1
* einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
* exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
code in the common constrained array cases.
* a-storio.adb: Change implementation to avoid possible alignment
problems on machines requiring strict alignment (data should be moved
as type Buffer, not type Elmt).
* checks.adb (Apply_Array_Size_Check): Improve these checks by
killing the overflow checks which we really do not need (64-bits is
enough).
2004-06-25 Vincent Celier <celier@gnat.com>
* makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
(Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
inconditionally for the main project.
(Recursive_Add_Archives.Add_Archive_Path): New procedure
(Link_Executables.Check_Time_Stamps): New procedure
(Link_Executables.Link_Foreign): New procedure
Changes made to reduce nesting level of this package
(Check): New procedure
(Add_Switches): When not in quiet output, check that a switch is not
the concatenation of several valid switches. If it is, issue a warning.
(Build_Global_Archive): If the global archive is rebuilt, linking need
to be done.
(Compile_Sources): Rebuilding a library archive does not imply
rebuilding the global archive.
(Build_Global_Archive): New procedure
(Build_Library): New name for Build_Archive, now only for library
project
(Check_Archive_Builder): New procedure
(Create_Global_Archive_Dependency_File): New procedure
(Gprmake): Call Build_Global_Archive before linking
* makegpr.adb: Use Other_Sources_Present instead of Sources_Present
throughout.
(Scan_Arg): Display the Copyright notice when -v is used
* gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
for gnatls.
* vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
COMPILE.
Add new GNAT LIST qualifier /FILES=
Added qualifier /DIRECTORY= to GNAT METRIC
Added qualifier /FILES= to GNAT METRIC
Added qualifier /FILES to GNAT PRETTY
* switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
to take into account both versions of the switch.
* switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
always be the last switch to the gcc driver. Disable switch storing so
that switches automatically added by the gcc driver are not put in the
ALI file.
* prj.adb (Project_Empty): Take into account changes in components of
Project_Data.
* prj.ads (Languages_Processed): New enumaration value All_Languages.
* prj.ads (Project_Data): Remove component Lib_Elaboration: never
used. Split Boolean component Ada_Sources_Present in two Boolean
components Ada_Sources_Present and Other_Sources_Present.
Minor reformatting
* prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
instead of Sources_Present.
(Set_Ada_Paths.Add.Recursive_Add): Ditto
* prj-nmsc.adb: Minor reformatting
(Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
(Check_Ada_Naming_Scheme_Validity): New name of previous procedure
Check_Ada_Naming_Scheme.
Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
throughout.
* prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
In_Limited.
Make sure that all cycles where there is at least one "limited with"
are detected.
(Parse_Single_Project): New Boolean parameter In_Limited
* prj-proc.adb (Recursive_Check): When Process_Languages is
All_Languages, call first Prj.Nmsc.Ada_Check, then
Prj.Nmsc.Other_Languages_Check.
* prj-proc.adb (Process): Use Ada_Sources_Present or
Other_Sources_Present (instead of Sources_Present) depending on
Process_Languages.
* lang-specs.h: Keep -g and -m switches in the same order, and as the
last switches.
* lib.adb (Switch_Storing_Enabled): New global Boolean flag
(Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
False.
(Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
False.
* lib.ads (Disable_Switch_Storing): New procedure.
* make.adb: Modifications to reduce nesting level of this package.
(Check_Standard_Library): New procedure
(Gnatmake.Check_Mains): New procedure
(Gnatmake.Create_Binder_Mapping_File): New procedure
(Compile_Sources.Compile): Add switch -gnatez as the last option
(Display): Never display -gnatez
* Makefile.generic:
When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
* gnatcmd.adb (Check_Project): New function
(Process_Link): New procedure to reduce nesting depth
(Check_Files): New procedure to reduce the nesting depth.
For GNAT METRIC, include the inherited sources in extending projects.
(GNATCmd): When GNAT LS is invoked with a project file and no files,
add the list of files from the sources of the project file. If this list
is too long, put it in a temp text files and use switch -files=
(Delete_Temp_Config_Files): Delete the temp text file that contains
a list of source for gnatpp or gnatmetric, if one has been created.
(GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
in the project file is too large, create a temporary text file that
list them and pass it to the tool with "-files=<temp text file>".
(GNATCmd): For GNAT METRIC add "-d=<abject dir>" as the first switch
* gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
generated file is in not in Ada.
* gnatls.adb: Remove all parameters And_Save that are no longer used.
(Scan_Ls_Arg): Add processing for -files=
(Usage): Add line for -files=
* g-os_lib.adb (On_Windows): New global constant Boolean flag
(Normalize_Pathname): When on Windows and the path starts with a
directory separator, make sure that the resulting path will start with
a drive letter.
* clean.adb (Clean_Archive): New procedure
(Clean_Project): When there is non-Ada code, delete the global archive,
the archive dependency files, the object files and their dependency
files, if they exist.
(Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
2004-06-25 Thomas Quinot <quinot@act-europe.fr>
* sinfo.ads: Fix typo in comment.
* sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
the TSS for remote access-to-subprogram types, since these TSS are
always present once the type has been analyzed.
(RAS_E_Dereference): Same.
* sem_attr.adb (Analyze_Attribute): When analysis of an attribute
reference raises Bad_Attribute, mark the reference as analyzed so the
node (and any children resulting from rewrites that could have occurred
during the analysis that ultimately failed) is not analyzed again.
* exp_ch7.ads (Find_Final_List): Fix misaligned comment.
* exp_dist.adb: Minor comment fix.
* exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
type is an anonymous access type, no unchecked deallocation of the
allocated object can occur. If the object is controlled, attach it with
a count of 1. This allows attachment to the Global_Final_List, if
no other relevant list is available.
(Get_Allocator_Final_List): For an anonymous access type that is
the type of a discriminant or record component, the corresponding
finalisation list is the one of the scope of the type.
2004-06-25 Ed Schonberg <schonberg@gnat.com>
* sem_ch3.adb (Replace_Type): When computing the signature of an
inherited subprogram, use the first subtype if the derived type
declaration has no constraint.
* exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
before applying previous optimization. Minor code cleanup.
* exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
placed at the beginning of an unpacked record without explicit
alignment, a slice of it will be aligned and does not need a copy when
used as an actual.
2004-06-25 Ed Schonberg <schonberg@gnat.com>
PR ada/15591
PR ada/15592
* sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
reference is written with expressions mimicking parameters.
2004-06-25 Hristian Kirtchev <kirtchev@gnat.com>
PR ada/15589
* sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
STEP 2a. The constraints of a full type declaration of a derived record
type are checked for conformance with those declared in the
corresponding private extension declaration. The message
"not conformant with previous declaration" is emitted if an error is
detected.
2004-06-25 Vasiliy Fofanov <fofanov@act-europe.fr>
* g-traceb.ads: Document the need for -E binder switch in the spec.
* g-trasym.ads: Document the need for -E binder switch in the spec.
2004-06-25 Jose Ruiz <ruiz@act-europe.fr>
* sem_prag.adb: Add handling of pragma Detect_Blocking.
* snames.h, snames.ads, snames.adb: Add entry for pragma
Detect_Blocking.
* s-rident.ads: Change reference to pragma Detect_Blocking.
* targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
system.ads.
* opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
to indicate whether pragma Detect_Blocking is active.
* par-prag.adb: Add entry for pragma Detect_Blocking.
* rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
of not handling WITH.
Note that this replaces the previous update which was incorrect.
2004-06-25 Javier Miranda <miranda@gnat.com>
* sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
use-clauses to have a clean environment.
* sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
the installation of the use-clauses to stablish a clean environment in
case of compilation of a separate unit; otherwise the call to
use_one_package is protected by the barrier Applicable_Use.
* sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
the installation of the use-clauses to stablish a clean environment in
case of compilation of a separate unit.
(End_Use_Clauses): Minor comment cleanup.
2004-06-25 Sergey Rybin <rybin@act-europe.fr>
* gnat_ugn.texi: Add description of the gnatpp 'files' switch
From-SVN: r83658
Paul Brook [Fri, 25 Jun 2004 16:36:13 +0000 (16:36 +0000)]
concurrence.h: Still create mutex object when single-threaded.
* include/bits/concurrence.h: Still create mutex object when
single-threaded.
From-SVN: r83657
Devang Patel [Fri, 25 Jun 2004 15:41:38 +0000 (08:41 -0700)]
darwin.h (CC1_SPEC): Handle -gused and -gfull.
* config/rs6000/darwin.h (CC1_SPEC): Handle -gused and -gfull.
* config/i386/darwin.h (CC1_SPEC): Same.
From-SVN: r83655