Commit Graph

60048 Commits

Author SHA1 Message Date
Nathan Sidwell
090ad434b0 class.c (finish_struct_bits): Use for loop.
* class.c (finish_struct_bits): Use for loop.
	(propagate_binfo_offsets): Do primary binfo outside of loop.

From-SVN: r84815
2004-07-16 09:42:22 +00:00
Richard Sandiford
d811830ea7 * config/mips/mips.md: Delete outdated comment.
From-SVN: r84814
2004-07-16 09:31:39 +00:00
Richard Sandiford
bb5928069e mips.c (get_float_compare_codes): Delete.
* config/mips/mips.c (get_float_compare_codes): Delete.
	(mips_emit_compare): New function, mostly extracted from
	get_float_compare_codes and gen_conditional_branch.
	(gen_conditional_branch, gen_conditional_move): Use it.

From-SVN: r84813
2004-07-16 09:00:09 +00:00
Nathan Sidwell
3758425f53 re PR c++/16583 (G++ segfaults with -fdump-translation-unit)
PR c++/16583
	* dump.c (cp_dump_tree): Don't dump the bases if there's no
	binfo.

From-SVN: r84812
2004-07-16 08:22:12 +00:00
Segher Boessenkool
00ca8311cf genautomata.c (add_vect): Speedup by using integers as bit-vectors for walking through the comb_vect and...
* genautomata.c (add_vect): Speedup by using integers as
        bit-vectors for walking through the comb_vect and finding
        a match.

From-SVN: r84811
2004-07-16 10:12:11 +02:00
Nathan Sidwell
bd7eccc44e * pt.c (tsubst) <TREE_BINFO case>: We should never get here.
From-SVN: r84810
2004-07-16 08:07:08 +00:00
Richard Sandiford
f128625718 mips.c (mips_zero_if_equal): Only use XORs if the second operand is an uns_arith_operand...
* config/mips/mips.c (mips_zero_if_equal): Only use XORs if the second
	operand is an uns_arith_operand; use subtraction otherwise.
	* config/mips/mips.md (cmpsi, cmpdi): Allow any nonmemory_operand,
	not just arith_operands.

From-SVN: r84809
2004-07-16 07:53:47 +00:00
Richard Sandiford
a012718f1d mips-protos.h (gen_int_relational): Delete.
* config/mips/mips-protos.h (gen_int_relational): Delete.
	(mips_emit_scc): Declare.
	* config/mips/mips.c (internal_test): Delete.
	(sle_operand, sleu_operand): New functions.
	(map_test_to_internal_test, gen_int_relational): Delete.
	(mips_emit_binary, mips_relational_operand_ok_p)
	(mips_emit_int_relational, mips_zero_if_equal)
	(mips_emit_scc): New functions.
	(gen_conditional_branch): Rework to use mips_emit_int_relational.
	* config/mips/mips.h (PREDICATE_CODES): Add sle_operand and
	sleu_operand.
	* config/mips/mips.md (seq, sne, sgt, sge, slt, sle, sgtu, sgeu)
	(sltu, sleu): Use mips_emit_scc.
	(*sge_[sd]i, *sgeu_[sd]i): New patterns.
	(*sle_[sd]i, *sle_[sd]i_mips16): Use sle_operand.
	(*sleu_[sd]i, *sleu_[sd]i_mips16): Use sleu_operand.

From-SVN: r84808
2004-07-16 07:51:31 +00:00
Richard Sandiford
c03eb5a305 * config/mips/mips.md (*sgt_di_mips16): Fix destination constraint.
From-SVN: r84807
2004-07-16 07:47:07 +00:00
Richard Sandiford
9cb24602d3 mips.md (*seq_[sd]i): Renamed from seq_[sd]i_zero.
* config/mips/mips.md (*seq_[sd]i): Renamed from seq_[sd]i_zero.
	(*sne_[sd]i): Likewise sne_[sd]i_zero.
	(*sgt_[sd]i): ...and sgt_[sd]i.
	(*slt_[sd]i): ...and slt_[sd]i.
	(*sgtu_[sd]i): ...and sgtu_[sd]i.
	(*sltu_[sd]i): ...and sltu_[sd]i.
	(*sleu_[sd]i): ...and sleu_[sd]i_const.
	Name previously unnamed mips16 patterns.  Formatting fixes.

From-SVN: r84806
2004-07-16 07:45:54 +00:00
Richard Sandiford
d7ad1e57f7 mips.c (cmp_operands): Renamed from branch_cmp.
* config/mips/mips.c (cmp_operands): Renamed from branch_cmp.
	(branch_type): Delete.
	(gen_conditional_branch, gen_conditional_move)
	(mips_gen_conditional_trap): Update after name change.  Get the
	comparison mode from cmp_operands[0].
	* config/mips/mips.h (cmp_type, branch_type): Delete.
	(cmp_operands): Renamed from branch_cmp.
	* config/mips/mips.md (cmpsi, cmpdi, cmpsf, cmpdf): Update after
	name change.  Don't set branch_type.
	(seq, sne, sgt, sge, slt, sle, sgtu, sgeu, sltu, sleu): Check the
	mode class of cmp_operands[0] rather than branch_type.  Update after
	name change.

From-SVN: r84805
2004-07-16 07:44:24 +00:00
Richard Sandiford
629198e266 mips.c (mips_rtx_costs): In mips16 code, set the cost of 0...255 to 0 when inside a SET.
* config/mips/mips.c (mips_rtx_costs): In mips16 code, set the cost
	of 0...255 to 0 when inside a SET.

From-SVN: r84804
2004-07-16 07:35:58 +00:00
Richard Sandiford
2bff1abfb0 * config/mips/mips.md: Remove mips16 define_peepholes.
From-SVN: r84803
2004-07-16 06:46:48 +00:00
Nathanael Nerode
ed2e3d3395 configure.in: Use target_noncanonical rather than target_alias for forward-compatibility with...
* configure.in: Use target_noncanonical rather than
	target_alias for forward-compatibility with autoconf 2.59.
	* configure: Regenerate.
	* Makefile.am, gcj/Makefile.am, include/Makefile.am,
	testsuite/Makefile.am: Substitute target_noncanonical.
	* Makefile.in, gcj/Makefile.in, include/Makefile.in,
	testsuite/Makefile.in: Regenerate.

From-SVN: r84802
2004-07-16 05:36:35 +00:00
Daniel Berlin
50265400ed tree-ssa-pre.c (init_pre): Connect infinite loops to exit.
2004-07-16  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-pre.c (init_pre): Connect infinite loops to exit.
	(fini_pre): Remove fake edges.

From-SVN: r84800
2004-07-16 04:24:43 +00:00
Richard Henderson
310de7612e tree-ssa-operands.c (get_expr_operands): Use a switch.
* tree-ssa-operands.c (get_expr_operands): Use a switch.  Split out...
        (get_indirect_ref_operands, get_call_expr_operands): ... these.

From-SVN: r84798
2004-07-15 19:26:47 -07:00
Nathanael Nerode
bc03b358a0 configure.in: Move as much as possible below AC_CANONICAL_SYSTEM.
* configure.in: Move as much as possible below AC_CANONICAL_SYSTEM.
	Introduce _GCC_TOPLEV_NONCANONICAL_TARGET.
	* acinclude.m4: Include acx.m4.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r84797
2004-07-16 02:11:33 +00:00
Mark Mitchell
aaaa46d2b0 vec.h (VEC_address): New function.
* vec.h (VEC_address): New function.

	* cp-tree.h (lang_type_class): Remove has_real_assign_ref and
	has_abstract_assign_ref.  Make methods a VEC(tree) *.
	(TYPE_HAS_CONST_ASSIGN_REF): Add documentation.
	(CLASSTYPE_CONSTRUCTORS): Adjust for changes to CLASSTYPE_METHOD_VEC.
	(CLASSTYPE_DESTRUCTORS): Likewise.
	(TYPE_HAS_REAL_ASSIGN_REF): Remove.
	(TYPE_HAS_ABSTRACT_ASSIGN_REF): Likewise.
	(add_method): Change prototoype.
	* class.c (add_method): Remove error_p parameter.  Adjust for
	changes to CLASSTYPE_METHOD_VEC.
	(handle_using_decl): Adjust call to add_method.
	(maybe_warn_about_overly_private_class): Adjust for
	changes to CLASSTYPE_METHOD_VEC.
	(resort_type_method_vec): Likewise.
	(finish_struct_methods): Likewise.
	(check_for_override): Likewise.
	(warn_hidden): Likewise.
	(add_implicitly_declared_members): Defer creation of assignment
	operators.  Adjust call to add_method.
	(clone_function_decl): Adjust call to add_method.
	(check_bases_and_members): Don't set TYPE_HAS_REAL_ASSIGN_REF.
	(finish_struct_1): Use CLASSTYPE_DESTRUCTORS.
	* decl.c (grok_special_member_properties): Don't set
	TYPE_HAS_ABSTRACT_ASSIGN_REF.
	* decl2.c (check_classfn): Adjust for
	changes to CLASSTYPE_METHOD_VEC.
	* method.c (locate_dtor): Use CLASSTYPE_DESTRUCTORS.
	(locate_ctor): Use CLASSTYPE_CONSTRUCTORS.
	(locate_copy): Adjust for changes to CLASSTYPE_METHOD_VEC.
	(implicitly_declare_fn): Set DECL_SOURCE_LOCATION.  Do not call
	cp_finish_decl.
	* pt.c (check_explicit_specialization): Adjust for
	changes to CLASSTYPE_METHOD_VEC.
	(instantiate_class_template): Do not set
	TYPE_HAS_ABSTRACT_ASSIGN_REF.
	* ptree.c (cxx_print_type): Don't try to print
	CLASSTYPE_METHOD_VEC.
	* rtti.c (emit_support_tinfos): Use CLASSTYPE_DESTRUCTORS.
	* search.c (lookup_field_r): Adjust for
	changes to CLASSTYPE_METHOD_VEC.
	(lookup_fnfields): Likewise.
	(lookup_conversion_operator): Likewise.
	(lookup_fnfields_1): Likewise.  Create assignment operators
	lazily.
	(look_for_overrides_here): Adjust for
	changes to CLASSTYPE_METHOD_VEC.
	(add_conversions): Likewise.
	* semantics.c (finish_member_declaration): Adjust call to add_method.

From-SVN: r84796
2004-07-16 01:15:43 +00:00
Tobias Schlüter
b38b6477f8 re PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))
fortran/
* parse.c (gfc_check_do_variable): Fix error locus.

testsuite/
PR fortran/16404
* gfortran.dg/do_iterator.f90: New test.

From-SVN: r84795
2004-07-16 02:57:43 +02:00
Tobias Schlüter
c9583ed23d re PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))
PR fortran/16404
(parts ported from g95)
* parse.h (gfc_state_data): New field do_variable.
(gfc_check_do_variable): Add prototype.
* parse.c (push_state): Initialize field 'do_variable'.
(gfc_check_do_variable): New function.
(parse_do_block): Remember do iterator variable.
(parse_file): Initialize field 'do_variable'.
* match.c (gfc_match_assignment, gfc_match_do,
gfc_match_allocate, gfc_match_nullify, gfc_match_deallocate):
Add previously missing checks.
(gfc_match_return): Reformat error message.
* io.c (match_out_tag): New function.
(match_open_element, match_close_element,
match_file_element, match_dt_element): Call match_out_tag
instead of match_vtag where appropriate.
(match_io_iterator, match_io_element): Add missing check.
(match_io): Reformat error message.
(match_inquire_element): Call match_out_tag where appropriate.

From-SVN: r84793
2004-07-16 02:39:40 +02:00
Tobias Schlüter
e94f3b4f2b fortran-torture.exp (fortran-torture): Don't test compile tests with fulllist of options.
* lib/fortran-torture.exp (fortran-torture): Don't test compile
tests with fulllist of options.
* lib/gfortran-dg.exp (gfortran-dg-runtest): Only test with all
of TORTURE_OPTIONS if test contains 'dg-do run'.

From-SVN: r84792
2004-07-16 02:32:26 +02:00
Volker Reichelt
a916927fb5 re PR rtl-optimization/16536 (Incorrect __restrict__ optimization in -O2)
PR rtl-optimization/16536
	* gcc.c-torture/execute/restrict-1.c: New test.

From-SVN: r84791
2004-07-16 00:25:59 +00:00
GCC Administrator
1373fd361f Daily bump.
From-SVN: r84788
2004-07-16 00:16:13 +00:00
Bryce McKinlay
cbd7a79bc3 re PR libgcj/16574 (java.sql.Timestamp#toString() does not deal with fractional seconds correctly)
2004-07-15  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/16574
	* java/sql/Timestamp.java (dateFormat): Renamed from sdf.
	(decimalFormat): New static variable.
	(sbuf): Likewise.
	(getTime): New. Override Date.getTime().
	(toString): Synchronize. Use decimalFormat to format nanos value
	correctly. Truncate extra zeros.
	(before): Compare getNanos() only if getTime() is equal.
	(after): Likewise.

From-SVN: r84784
2004-07-15 23:14:45 +01:00
Jason Merrill
e4f78bd4af re PR middle-end/15885 (wrong va_start warning (and code))
* cp-lang.c (cxx_types_compatible_p): To the middle-end,
        references and pointers are compatible.

        PR middle-end/15885
        * gimplify.c (gimplify_arg): New fn, split out from...
        (gimplify_call_expr): Here.  Special-case BUILT_IN_VA_START.

From-SVN: r84782
2004-07-15 17:50:51 -04:00
Roman Zippel
bc2f7bb864 m68k.c (output_move_qimode): Abort on an attempt to generate code which is generated by pushqi1 now
2004-07-15  Roman Zippel  <zippel@linux-m68k.org>

        * config/m68k/m68k.c (output_move_qimode): Abort on an attempt to
        generate code which is generated by pushqi1 now
        * config/m68k/m68k.h (MOVE_BY_PIECES_P): Remove.

From-SVN: r84780
2004-07-15 21:18:10 +00:00
Roman Zippel
8abcb0f705 combine.c (simplify_set): match the mode of the constant 0 with the tested operand to match the compare...
2004-07-15  Roman Zippel  <zippel@linux-m68k.org>

        * combine.c (simplify_set): match the mode of the constant 0 with
        the tested operand to match the compare behaviour and the
        simplify_relational_operation() expectation.

From-SVN: r84779
2004-07-15 21:16:21 +00:00
Aldy Hernandez
7a1bf2f971 rs6000.md ("bunordered"): Disable for e500.
* config/rs6000/rs6000.md ("bunordered"): Disable for e500.
        ("bordered"): Same.

From-SVN: r84778
2004-07-15 21:07:49 +00:00
Aldy Hernandez
24fab1d3db rs6000.md ("*cceq_ior_compare"): Allow unconditionally.
* config/rs6000/rs6000.md ("*cceq_ior_compare"): Allow
        unconditionally.
        * config/rs6000/spe.md ("e500_cceq_ior_compare"): Remove.

From-SVN: r84775
2004-07-15 21:02:15 +00:00
Arnaud Charlet
523456dbde [multiple changes]
2004-07-15  Robert Dewar  <dewar@gnat.com>

	* makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor
	reformatting

	* gnat_ugn.texi: Add instantiation of direct_io or sequential_io with
	access values as an example of a warning.

	* gnat_rm.texi: Document new attribute Has_Access_Values

	* gnat-style.texi: Document that box comments belong on nested
	subprograms

	* sem_util.ads (Has_Access_Values): Improved documentation

	* s-finimp.ads, s-finimp.adb: Fix spelling error in comment

	* sem_prag.adb (Check_Duplicated_Export_Name): New procedure
	(Process_Interface_Name): Call to this new procedure
	(Set_Extended_Import_Export_External_Name): Call to this new procedure

	* s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment

	* a-direio.ads, a-sequio.ads: Warn if Element_Type has access values

	* einfo.ads: Minor comment typo fixed

2004-07-15  Jose Ruiz  <ruiz@act-europe.fr>

	* snames.adb: Add _atcb.

	* snames.ads: Add Name_uATCB.

	* s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated
	(in the expanded code) when using the restricted run time.

	* s-tarest.ads (Create_Restricted_Task): Created_Task transformed into
	a in parameter in order to allow ATCBs to be preallocated (in the
	expanded code).

	* s-taskin.adb (Initialize_ATCB): T converted into a in parameter in
	order to allow ATCBs to be preallocated. In case of error, the ATCB is
	deallocated in System.Tasking.Stages.

	* s-taskin.ads (Initialize_ATCB): T converted into a in parameter in
	order to allow ATCBs to be preallocated.

	* s-tassta.adb (Create_Task): In case of error the ATCB is deallocated
	here. It was previously done in Initialize_ATCB.

	* rtsfind.ads: Make the Ada_Task_Control_Block visible.

	* exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the
	Restricted run time.

	* exp_ch3.adb: When using the Restricted run time, pass the
	preallocated Ada_Task_Control_Block when creating a task.

2004-07-15  Ed Schonberg  <schonberg@gnat.com>

	* sem_util.adb (Normalize_Actuals): If there are no actuals on a
	function call that is itself an actual in an enclosing call, diagnose
	problem here rather than assuming that resolution will catch it.

	* sem_ch7.adb (Analyze_Package_Specification): If the specification is
	the local copy of a generic unit for a formal package, and the generic
	is a child unit, install private part of ancestors before compiling
	private part of spec.

	* sem_cat.adb (Validate_Categorization_Dependency): Simplify code to
	use scope entities rather than tree structures, to handle properly
	parent units that are instances rewritten as bodies for inlining
	purposes.

	* sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent,
	Remove_Parents): Handle properly a parent unit that is an
	instantiation, when the unit has been rewritten as a body for inlining
	purposes.

	* par.adb (Goto_List): Global variable to collect goto statements in a
	given unit, for use in detecting natural loops.

	* par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for
	use in detecting natural loops.

	* par-labl.adb (Find_Natural_Loops): Recognize loops create by
	backwards goto's, and rewrite as a infinite loop, to improve locality
	of temporaries.

	* exp_util.adb (Force_Evaluation): Recognize a left-hand side
	subcomponent that includes an indexed reference, to prevent the
	generation of copies that would miscompile the desired assignment
	statement.
	(Build_Task_Image_Decls): Add a numeric suffix to
	generated name for string variable, to avoid spurious conflicts with
	the name of the type of a single protected object.

	* exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a
	loop with an explicit exit statement, to avoid generating an
	out-of-range value with 'Succ leading to spurious constraint_errors
	when compiling with -gnatVo.

2004-07-15  Thomas Quinot  <quinot@act-europe.fr>

	* sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it
	might not be analyzed yet, even if its Etype is already set (case of an
	unchecked conversion built using Unchecked_Convert_To, for example).
	If the prefix has already been analyzed, this will be a nop anyway.

	* exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a
	controller type, or an assignment of a record type with controlled
	components, copy only user data, and leave the finalization chain
	pointers untouched.

2004-07-15  Vincent Celier  <celier@gnat.com>

	* make.adb (Collect_Arguments): Improve error message when attempting
	to compile a source not part of any project, when -x is not used.

	* prj.ads: (Defined_Variable_Kind): New subtype

	* prj-attr.adb (Register_New_Package): Two new procedures to register
	a package with or without its attributes.
	(Register_New_Attribute): Mew procedure to register a new attribute in a
	package.
	New attribute oriented subprograms: Attribute_Node_Id_Of,
	Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
	Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
	Next_Attribute.
	New package oriented subprograms: Package_Node_Id_Of,
	Add_Unknown_Package, First_Attribute_Of, Add_Attribute.

	* prj-attr.ads (Attribute_Node_Id): Now a private, self initialized
	type.
	(Package_Node_Id): Now a private, self initialized type
	(Register_New_Package): New procedure to register a package with its
	attributes.
	New attribute oriented subprograms: Attribute_Node_Id_Of,
	Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
	Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
	Next_Attribute.
	New package oriented subprograms: Package_Node_Id_Of,
	Add_Unknown_Package, First_Attribute_Of, Add_Attribute.

	* prj-dect.adb (Parse_Attribute_Declaration,
	Parse_Package_Declaration): Adapt to new spec of Prj.Attr.

	* prj-makr.adb (Make): Parse existing project file before creating
	other files. Fail if there was an error during parsing.

	* prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to
	new spec of Prj.Attr.

	* prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt
	to new spec of Prj.Attr.

2004-07-15  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>

	* utils2.c: Fix typo in comment.

From-SVN: r84774
2004-07-15 22:34:43 +02:00
Tobias Schlüter
0c0df4b3f0 re PR fortran/13792 (lbound/ubound generates internal compiler error)
fortran/
PR fortran/13792
* simplify.c (gfc_simplify_bound): Copy the bound expression.

testsuite/
PR fortran/13792
* gfortran.fortran-torture/execute/bounds.f90: Add check for
compile-time simplification.

From-SVN: r84773
2004-07-15 21:55:05 +02:00
Richard Sandiford
4c467d4113 mips.c (mips_adjust_insn_length): Fix handling of calls in mips16 code.
* config/mips/mips.c (mips_adjust_insn_length): Fix handling of
	calls in mips16 code.

From-SVN: r84772
2004-07-15 19:28:22 +00:00
Tobias Schlüter
c5a419530e re PR fortran/15140 (assertion failed: (TREE_CODE (sym->backend_decl) == PARM_DECL)
fortran/
PR fortran/15140
* trans-decl.c (gfc_trans_deferred_vars): Remove bogus assertion.

testsuite/
PR fortran/15140
* gfortran.dg/pr15140.f90: New test.

From-SVN: r84770
2004-07-15 20:50:17 +02:00
Tobias Schlüter
d157d97822 re PR fortran/15129 (assumed size characters passed to subroutines incorrect)
fortran/
PR fortran/15129
* trans-decl.c (gfc_build_function_decl): Create a new chardecl
for every assumed length character dummy argument.

testsuite/
PR fortran/15129
* gfortran.dg/pr15129.f90: New test.

From-SVN: r84769
2004-07-15 20:43:50 +02:00
Paolo Carlini
fdb510e7d6 lwg-active.html, [...]: Import Revision 30.
2004-07-15  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/ext/lwg-active.html, lwg-defects.html: Import Revision 30.
	* docs/html/ext/howto.html: Tweak entries for DRs 167/253/389/402.

From-SVN: r84765
2004-07-15 18:04:07 +00:00
Richard Sandiford
f6711314fb mips.md: In the mips16 li/neg splitter...
* config/mips/mips.md: In the mips16 li/neg splitter, use SImode for
	the destination of the li as well as for the neg.

From-SVN: r84764
2004-07-15 17:59:11 +00:00
Jakub Jelinek
d5325238eb re PR libstdc++/14697 (libstdc++ couldn't find 32bit libgcc_s)
PR libstdc++/14697
	* acinclude.m4 (glibcxx_shared_libgcc): Correct
	glibcxx_shared_libgcc test for multilibs.
	* configure: Rebuilt.

From-SVN: r84762
2004-07-15 19:38:42 +02:00
Frank Ch. Eigler
429b4470bd * Fix for g++/15861
2004-07-15  Frank Ch. Eigler  <fche@redhat.com>

	g++/15861
	* mf-runtime.c (__mf_init): Make it non-static.  Tolerate
	repeated invocation.

From-SVN: r84761
2004-07-15 17:33:23 +00:00
Frank Ch. Eigler
35b6fdcfc2 * Fix for g++/15861
2004-07-15  Frank Ch. Eigler  <fche@redhat.com>

	g++/15861
	* cgraphunit.c (cgraph_build_static_cdtor): Add priority argument.
	* cgraph.h: Update declaration.
	* c-decl.c (build_cdtor): Update call with default priority.
	* coverage.c (create_coverage): Ditto.
	* tree-mudflap.c (mf_init_fndecl): New tree.
	(mudflap_init): Set it.
	(mudflap_register_call): Arrange to call __mf_init before the first
	__mf_register call.
	(mudflap_finish_file): Mark the mudflap static initializer as extra
	high priority, to beat all C++ static constructors.

2004-07-15  Frank Ch. Eigler  <fche@redhat.com>

	g++/15861
	* jcf-parse.c (java_emit_static_constructor): Specify default
	priority.

From-SVN: r84760
2004-07-15 17:33:01 +00:00
Toon Moene
3e4035f833 libf2c: Removed.
2004-07-15  Toon Moene  <toon@moene.indiv.nluug.nl>

	* libf2c: Removed.
	* gcc/gccbug.in: Updated because of libf2c removal.
	* maintainer-scripts/gcc_release: Ditto.

From-SVN: r84759
2004-07-15 16:52:49 +00:00
Nathan Sidwell
48b456474c decl.c (xref_basetypes): Refactor.
* decl.c (xref_basetypes): Refactor.
	* tree.c (copy_base_binfos): Replace with ...
	(copy_binfo): ... this. Deep copy the given binfo, (not the just
	bases of the given base).
	* cp-tree.h (copy_base_binfo): Remove.
	(copy_binfo): Declare.

From-SVN: r84758
2004-07-15 16:15:52 +00:00
Mark Mitchell
df05a794c1 name-lookup.c (set_inherited_value_binding_p): Add class_type parameter.
* name-lookup.c (set_inherited_value_binding_p): Add class_type
	parameter.
	(get_class_binding): Adjust.
	(push_class_level_binding): Don't use set_inherited_value_binding_p.

From-SVN: r84757
2004-07-15 16:02:07 +00:00
Nathan Sidwell
132c7dd3d9 class.c (finish_struct_bits): Don't set TYPE_HAS_CONVERSION here.
* class.c(finish_struct_bits): Don't set TYPE_HAS_CONVERSION here.
	* decl.c (xref_basetypes): Set it here.

From-SVN: r84756
2004-07-15 15:06:26 +00:00
Tobias Schlüter
769d99d9cd re PR fortran/15324 (segfault / ICE with array of assumed length characters)
PR fortran/15324
* trans-array.c gfc_trans_g77_array,
gfc_trans_dummy_array_bias): Don't call gfc_trans_string_init
for assumed length characters.
(gfc_conv_expr_descriptor): Set se->string_length if dealing
with a character expression.
(gfc_cvonv_array_parameter): Pass string length when passing
character array according to g77 conventions.

Fix ChangeLog

From-SVN: r84755
2004-07-15 17:02:16 +02:00
Tobias Schlüter
610bff8401 re PR fortran/15324 (segfault / ICE with array of assumed length characters)
PR fortran/15324
* gfortran.dg/pr15324.f90: New test.

From-SVN: r84754
2004-07-15 16:59:15 +02:00
Jeff Law
9270f90074 loop.c (check_insn_for_givs): Restore check for code labels that was accidentally deleted by a recent checkin.
* loop.c (check_insn_for_givs): Restore check for code labels that was
        accidentally deleted by a recent checkin.

From-SVN: r84753
2004-07-15 08:55:15 -06:00
Tobias Schlüter
20c9dc8aac re PR libfortran/15234 (libgfortran doesn't compile on Tru64 UNIX V4.0F)
PR fortran/15234
* trans-array.c gfc_trans_g77_array,
gfc_trans_dummy_array_bias): Don't call gfc_trans_string_init
for assumed length characters.
(gfc_conv_expr_descriptor): Set se->string_length if dealing
with a character expression.
(gfc_cvonv_array_parameter): Pass string length when passing
character array according to g77 conventions.

From-SVN: r84752
2004-07-15 16:53:28 +02:00
Jakub Jelinek
a12baf9804 Fix a ChangeLog typo.
From-SVN: r84750
2004-07-15 15:46:05 +02:00
Nathanael Nerode
366095705d acinclude.m4: "Inline" LIBGCJ_CONFIGURE macro into...
* acinclude.m4: "Inline" LIBGCJ_CONFIGURE macro into...
	* configure.in: ...here.
	* aclocal.m4: Regenerate.
	* configure: Regenerate.

From-SVN: r84749
2004-07-15 11:08:30 +00:00
Nathan Sidwell
37a247a0a0 class.c (check_bases): Don't set CLASSTYPE_NON_AGGREGATE here.
* class.c (check_bases): Don't set CLASSTYPE_NON_AGGREGATE here.
	Don't check for incomplete base.
	(get_vfield_name): Simplify while loop.
	* decl.c (xref_basetypes): Set CLASSTYPE_NON_AGGREGATE here.

From-SVN: r84747
2004-07-15 08:33:27 +00:00