Commit Graph

59896 Commits

Author SHA1 Message Date
Nathan Sidwell ccb14335ce missed in previous commit
From-SVN: r84563
2004-07-12 16:16:38 +00:00
Nathan Sidwell cad7e87b11 call.c (build_user_type_conversion_1, [...]): Pass type directly to lookup_fnfields & build_special_member_call.
* call.c (build_user_type_conversion_1, build_new_op,
	check_constructor_callable, build_temp,
	perform_direct_initialization_of_possible): Pass type directly to
	lookup_fnfields & build_special_member_call.
	(build_special_member_call): Accept a type, and complete it.
	* class.c (finish_stuct_bits): Copy the BINFOs here.
	* cvt.c (ocp_convert): Pass type directly to
	build_special_member_call.
	* decl.c (build_ptrmemfunc_type): Call xref_bastypes here.
	(xref_basetypes): Allocate the binfo here. Adjust.
	* init.c (build_init, build_new_1): Pass type directly to
	build_special_member_call.
	* lex.c (cxx_make_type): Do not allocate binfo here.
	* name-lookup.c (arg_assoc_class): Incomplete types have no binfo.
	* parser.c (cp_parser_class_head): Always call xref_basetypes.
	* pt.c (instantiate_class_template): Likewise. Inhibit access
	checking for template friends.
	* ptree.c (cxx_print_type): Adjust record printing.
	* search.c (lookup_base): When taking a type, complete it before
	looking for a binfo.
	(lookup_member): Delay completing a type.
	(push_class_decls): Don't walk an incomplete type.
	(lookup_conversions): Likewise.
	* semantics.c (finish_stmt_expr_expr): Pass type directly to
	build_special_member_call.
	* tree.c (copy_base_binfos): Adjust.
	(make_binfo): Likewise.
	* typeck.c (build_modify_expr): Pass type directly to
	build_special_member_call.
	* typeck2.c (process_init_constructor): Check a binfo exists.
	(build_m_component_ref): Allow accessing an incomplete type.
	(build_functional_cast): Pass type directly to
	build_special_member_call.

From-SVN: r84562
2004-07-12 16:06:40 +00:00
Diego Novillo 255cd731f4 tree-cfg.c (find_taken_edge): Statically compute the truth value of a predicate comparing an SSA_NAME to itself.
* tree-cfg.c (find_taken_edge): Statically compute the truth
	value of a predicate comparing an SSA_NAME to itself.

From-SVN: r84561
2004-07-12 11:38:25 -04:00
Roger Sayle 938bf7475d rs6000.c (rs6000_rtx_costs): Indicate that the rs6000 doesn't have shift-and-add or shift-and-sub...
* config/rs6000/rs6000.c (rs6000_rtx_costs): Indicate that the
	rs6000 doesn't have shift-and-add or shift-and-sub instructions
	by returning the cost of a multiplication plus an addition.

From-SVN: r84556
2004-07-12 13:42:28 +00:00
David Billinghurst 62e39334a0 004-07-12 David Billinghurst (David.Billinghurst@riotinto.com)
* gfortran.dg/g77/12002.f: Copy from g77.f-torture/compile.
        Add {dg-do compile} directive.
        * gfortran.dg/g77/13060.f: Likewise
        * gfortran.dg/g77/19990218-0.f: Likewise
        * gfortran.dg/g77/19990305-0.f: Likewise
        * gfortran.dg/g77/19990419-0.f: Likewise
        * gfortran.dg/g77/19990502-0.f: Likewise
        * gfortran.dg/g77/19990502-1.f: Likewise
        * gfortran.dg/g77/19990525-0.f: Likewise
        * gfortran.dg/g77/19990826-1.f: Likewise
        * gfortran.dg/g77/19990826-3.f: Likewise
        * gfortran.dg/g77/19990905-2.f: Likewise
        * gfortran.dg/g77/20000412-1.f: Likewise
        * gfortran.dg/g77/20000511-1.f: Likewise
        * gfortran.dg/g77/20000511-2.f: Likewise
        * gfortran.dg/g77/20000518.f: Likewise
        * gfortran.dg/g77/20000601-1.f: Likewise
        * gfortran.dg/g77/20000601-2.f: Likewise
        * gfortran.dg/g77/20000629-1.f: Likewise
        * gfortran.dg/g77/20000630-2.f: Likewise
        * gfortran.dg/g77/20010115.f: Likewise
        * gfortran.dg/g77/20010321-1.f: Likewise
        * gfortran.dg/g77/20010426.f: Likewise
        * gfortran.dg/g77/20020307-1.f: Likewise
        * gfortran.dg/g77/8485.f: Likewise
        * gfortran.dg/g77/960317-1.f: Likewise
        * gfortran.dg/g77/970915-0.f: Likewise
        * gfortran.dg/g77/980310-1.f: Likewise
        * gfortran.dg/g77/980310-2.f: Likewise
        * gfortran.dg/g77/980310-3.f: Likewise
        * gfortran.dg/g77/980310-4.f: Likewise
        * gfortran.dg/g77/980310-6.f: Likewise
        * gfortran.dg/g77/980310-7.f: Likewise
        * gfortran.dg/g77/980310-8.f: Likewise
        * gfortran.dg/g77/980419-2.f: Likewise
        * gfortran.dg/g77/980424-0.f: Likewise
        * gfortran.dg/g77/980427-0.f: Likewise
        * gfortran.dg/g77/980729-0.f: Likewise
        * gfortran.dg/g77/981117-1.f: Likewise
        * gfortran.dg/g77/toon_1.f: Likewise

From-SVN: r84553
2004-07-12 12:49:11 +00:00
Giovanni Bajo 7fb213d8e9 re PR c++/2204 (G++ doesn't check (member) function parameter for abstract-ness.)
PR c++/2204
	* config-lang.in (gtfiles): Add typeck2.c.
	* Make-lang.in: Tweak typeck2.c dependencies, and add rule for
	gt-cp-typeck2.h.
	* cp-tree.h: Declare complete_type_check_abstract.
	* typeck2.c (pat_calc_hash, pat_compare,
	complete_type_check_abstract): New functions.
	(abstract_virtuals_error): If the type is abstract, register the
	declaration within abstract_pending_vars for further checks.
	Inspect also dependent types. Handle IDENTIFIER_NODEs as decl.
	* decl.c (cp_finish_decl): Do not strip array types.
	(create_array_type_for_decl): Check for abstractness of the element
	type.
	(complete_vars): Call complete_type_check_abstract.
	* class.c (finish_struct): Prepare a list of virtual functions for
	template types, and call complete_vars on it to check for abstractness.

	PR c++/2204
	* g++.dg/other/abstract2.C: New test.

From-SVN: r84552
2004-07-12 10:07:30 +00:00
Nick Clifton b55e3aad63 config.gcc: Add sh-*-symbianelf target.
* config.gcc: Add sh-*-symbianelf target.
* config/sh/sh.c: Add new target macros:
  TARGET_ENCODE_SECTION_INFO, TARGET_STRIP_NAME_ENCODING,
  TARGET_CXX_IMPORT_EXPORT_CLASS.
  (sh_file_start): Create a definition of the .directive section.
  (sh_attribute): Add dllimport and dllexport attributes.
* config/sh/symbian-pre.h: New file.
* config/sh/symbian-post.h: New file.
* config/sh/symbian.c: New file. Contains Symbian specific functions.
* config/sh/sh-protos.h: Add prototypes for new functions provided by symbian.c.
* config/sh/t-symbian: New file.
* doc/extend.texi: Document support for dllimport and dllexport	attributes by
  the sh-symbianelf target.

From-SVN: r84551
2004-07-12 08:45:00 +00:00
Paolo Bonzini 55e99d5226 re PR tree-optimization/14107 (Return warnings don't work without optimizations enabled)
gcc/ChangeLog:
2004-06-29  Paolo Bonzini  <bonzini@gnu.org>

	PR tree-optimization/14107
	* gimplify.c (gimplify_return_expr): Accept a
	RETURN_EXPR with an error argument.
	* tree-optimize.c (init_tree_optimization_passes):
	Run pass_warn_function_return at -O0.

gcc/cp/ChangeLog:
2004-06-29  Paolo Bonzini  <bonzini@gnu.org>

	PR tree-optimization/14107
	* decl.c (finish_function): Remove temporary band-aid.

From-SVN: r84550
2004-07-12 06:56:45 +00:00
Roger Sayle 2a9dc91764 invoke.texi: Correct -fasynchronous-unwind-tables option index entry.
* doc/invoke.texi: Correct -fasynchronous-unwind-tables option
	index entry.

From-SVN: r84549
2004-07-12 06:21:16 +00:00
Richard Sandiford f10107a18f mips.c (mips_use_dfa_pipeline_interface): Delete.
* config/mips/mips.c (mips_use_dfa_pipeline_interface): Delete.
	(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define to hook_int_void_1.
	* config/mips/3000.md: Add copyright notice.  Remove automota and
	function units; use generic ones instead.  Only define reservations
	for things that are different from generic.md.  Extend each clause
	to include r3900.
	* config/mips/{4000,4100,4300,4600,5000,6000,generic}.md: New files.
	* config/mips/mips.md: Include them. Remove define_function_units.
	(alu, imuldiv): New automata and units.

From-SVN: r84547
2004-07-12 05:21:29 +00:00
Ben Elliston 4c59781d99 invoke.texi (Optimize Options): Document -frename-registers not being enabled by default at -O3.
* doc/invoke.texi (Optimize Options): Document -frename-registers
	not being enabled by default at -O3.

From-SVN: r84546
2004-07-12 13:35:17 +10:00
Mark Mitchell 12cf89fae2 call.c (build_operator_new_call): Avoid using push_to_top_level.
* call.c (build_operator_new_call): Avoid using push_to_top_level.
	(build_new_op): Adjust call to lookup_function_nonclass.
	* name-lookup.c (identifier_type_value): Adjust call to
	lookup_name_real.
	(lookup_name_real): Add block_p parameter.
	(lookup_name_nonclass): Adjust call to lookup_name_real.
	(lookup_function_nonclass): Likewise.
	(lookup_name): Likewise.
	* name-lookup.h (lookup_name_real): Change prototype.
	(lookup_name_nonclass): Likewise.
	* parser.c (cp_parser_lookup_name): Likewise.

From-SVN: r84543
2004-07-12 01:33:47 +00:00
Paul Brook 597073ace8 expr.c (gfc_check_assign_symbol): Handle pointer assignments.
* expr.c (gfc_check_assign_symbol): Handle pointer assignments.
	* trans-array.c (gfc_trans_auto_array_allocation): Remove
	initialization code.
	* trans-common.c (create_common): Use gfc_conv_initializer.
	* trans-decl.c (gfc_get_symbol_decl): Use gfc_conv_initializer.
	* trans-expr.c (gfc_conv_initializer): New function.
	(gfc_conv_structure): Use it.
	* trans.h (gfc_conv_initializer): Add prototype.
testsuite/
	* gfortran.dg/pointer_init_1.f90: New test.

From-SVN: r84542
2004-07-12 01:23:39 +00:00
Roger Sayle 247fec6ee6 expr.c (java_truthvalue_conversion, [...]): Convert calls to "build" into calls to the prefered "buildN" functions.
* expr.c (java_truthvalue_conversion, flush_quick_stack,
	java_stack_swap, java_stack_dup, build_java_athrow, build_java_jsr,
	build_java_ret, build_java_throw_out_of_bounds_exception,
	build_java_array_length_access, java_check_reference,
	build_java_arrayaccess, build_java_arraystore_check, build_newarray,
	build_anewarray, expand_java_multianewarray, expand_java_arraystore,
	expand_java_arrayload, build_java_monitor, expand_java_return,
	expand_load_internal, expand_java_NEW, build_get_class,
	build_instanceof, expand_java_CHECKCAST, expand_iinc,
	build_java_soft_divmod, build_java_binop, build_field_ref,
	expand_compare, expand_java_goto, expand_java_switch,
	expand_java_add_case, build_class_init, build_known_method_ref,
	invoke_build_dtable, build_invokevirtual, build_invokeinterface,
	expand_invoke, build_jni_stub, expand_java_field_op,
	java_expand_expr, expand_byte_code, STORE_INTERNAL,
	force_evaluation_order, emit_init_test_initialization): Convert
	calls to "build" into calls to the prefered "buildN" functions.

From-SVN: r84541
2004-07-12 01:05:28 +00:00
GCC Administrator 186af37b4d Daily bump.
From-SVN: r84539
2004-07-12 00:16:13 +00:00
Paul Brook 682e69e1a3 re PR fortran/15986 (Forward referenced procedure not handled correctly)
PR fortran/15986
	* parse.c (gfc_fixup_sibling_symbols): Also look for untyped
	variables.
	(parse_contained): Mark contained symbols as referenced.
testsuite/
	* gfortran.dg/contained_1.f90: New test.

From-SVN: r84536
2004-07-11 23:00:08 +00:00
Roger Sayle df23e6bbfa fold-const.c (fold): Canonicalize X + -C as X - C for floating point additions...
* fold-const.c (fold) <PLUS_EXPR>: Canonicalize X + -C as X - C for
	floating point additions, to keep real immediate constant positive.
	<MINUS_EXPR>:  For floating point subtractions, only transform X - -C
	into X + C, and leave positive real constants as X - C.

From-SVN: r84535
2004-07-11 21:56:37 +00:00
Bryce McKinlay abd1b60de7 re PR libgcj/16478 (Hash synchronization deadlock with finalizers)
2004-07-11  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/16478
	* prims.cc (_Jv_CreateJavaVM): Fix comment.
	* gnu/gcj/runtime/FinalizerThread.java (init): New. Native.
	(finalizerReady): Now native.
	(run): Likewise.
	(runFinalizers): Removed.
	* gnu/gcj/runtime/natFinalizerThread.cc (run): Implement here. Use
	a primitive lock, and don't hold it while running the finalizers.
	(runFinalizers): Implement. Don't aquire any Java lock.
	(finalizerReady): Use lock primitives to signal finalizer thread.

From-SVN: r84534
2004-07-11 22:31:49 +01:00
Bryce McKinlay 31a7b75558 re PR awt/16748 (IAA.ImageComponentsTest: Freezes When Window Is Resized)
2004-07-11  Bryce McKinlay  <mckinlay@redhat.com>

	PR libgcj/16748
	* prims.cc (_Jv_CreateJavaVM): Fix comment.
	* gnu/gcj/runtime/FinalizerThread.java (init): New. Native.
	(finalizerReady): Now native.
	(run): Likewise.
	(runFinalizers): Removed.
	* gnu/gcj/runtime/natFinalizerThread.cc (run): Implement here. Use
	a primitive lock, and don't hold it while running the finalizers.
	(runFinalizers): Implement. Don't aquire any Java lock.
	(finalizerReady): Use lock primitives to signal finalizer thread.

From-SVN: r84531
2004-07-11 22:19:47 +01:00
Mark Mitchell f44b0c8ec5 cp-tree.h (saved_scope): Make old_bindings a vector.
* cp-tree.h (saved_scope): Make old_bindings a vector.
	(unuse_fields): Remove.
	* name-lookup.h (cxx_saved_binding): Define it.
	* class.c (pushclass): Don't use unuse_fields.
	* name-lookup.c (cxx_saved_binding_make): Remove.
	(store_binding): Add new bindings to a vector, using an
	accumulator style, rather than adding them to a list.
	(store_bindings): Adjust accordingly.
	(store_class_bindings): Likewise.
	(push_to_top_level): Likewise.
	(pop_from_top_level): Likewise.
	* optimize.c (maybe_clone_body): Must push_to_top_level and
	pop_from_top_level calls outside of loop.
	* parser.c (cp_parser_class_specifier): Move push_scope/pop_scope
	calls here from cp_parser_late_parsing_default_args.
	(cp_parser_save_default_args): Record the class type in which the
	function is declared.
	(cp_parser_late_parsing_default_args): Do not call
	push_nested_class/pop_nested_class.
	* search.c (dfs_unuse_fields): Remove.
	(unuse_fields): Remove.

	* g++.dg/parse/defarg8.C: New test.

From-SVN: r84530
2004-07-11 21:02:31 +00:00
John David Anglin 4dcf7d66ac * pa.c (hppa_gimplify_va_arg_expr): Remove comment.
From-SVN: r84529
2004-07-11 20:28:11 +00:00
Zdenek Dvorak 8d3d51b52c re PR tree-optimization/15654 (ICE in calculate_live_on_entry with -O2 -fno-tree-dominator-opts)
PR tree-optimization/15654
	* tree-tailcall.c (eliminate_tail_call): Remove unreachable code.

From-SVN: r84527
2004-07-11 19:57:47 +00:00
Paolo Carlini 6f4229658a Add wchar_t counterparts of the basic_streambbuf<char> tests.
2004-07-11  Paolo Carlini  <pcarlini@suse.de>

	Add wchar_t counterparts of the basic_streambbuf<char> tests.
	* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: New.
	* testsuite/27_io/basic_streambuf/imbue/wchar_t/1.cc, 9322.cc:
	Likewise.
	* testsuite/27_io/basic_streambuf/in_avail/wchar_t/9701-3.cc: Likewise.
	* testsuite/27_io/basic_streambuf/overflow/wchar_t/1.cc, 2.cc,
	3599.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sgetc/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sgetn/wchar_t/1.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sputbackc/wchar_t/9538.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sputc/wchar_t/1057.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sputn/wchar_t/1.cc, 1057.cc:
	Likewise.
	* testsuite/27_io/basic_streambuf/sync/wchar_t/1057.cc: Likewise.

	* testsuite/27_io/basic_streambuf/imbue/char/1.cc, 9322.cc: Minor
	tweaks.
	* testsuite/27_io/basic_streambuf/overflow/char/2.cc, 3599.cc:
	Likewise.
	* testsuite/27_io/basic_streambuf/sputn/char/1057.cc: Likewise.
	* testsuite/27_io/basic_streambuf/sync/char/1057.cc: Likewise.

From-SVN: r84526
2004-07-11 19:13:59 +00:00
Roger Sayle 9675412fd9 builtins.c (fold_builtin_fputs): Don't bother converting the return type to integer_type_node...
* builtins.c (fold_builtin_fputs): Don't bother converting the
	return type to integer_type_node, as we've already checked that
	the result will be ignored.

	* tree-eh.c (tree_could_trap_p): Add support for -ftrapv such
	that signed addition, subtraction, multiplication, division,
	remainder, negation and absolute value may potentially trap.

	* fold-const.c (fold_ignored_result): New function to strip
	non-side-effecting tree nodes from an expression whose result
	is ignored.
	(fold_convert): Call fold_ignored_result when casting a value
	to VOID_TYPE.
	(omit_one_operand):  Call fold_ignored_result on the "omitted"
	operand when building a COMPOUND_EXPR.
	(pedantic_omit_one_operand): Likewise.
	* tree.h (fold_ignored_result): Prototype here.
	* tree-ssa-ccp.c (ccp_fold_builtin): Call fold_ignored_result
	when we're going to ignore the result.

From-SVN: r84525
2004-07-11 18:14:48 +00:00
Richard Henderson fa27426eb1 re PR tree-optimization/16383 (internal compiler error: in generate_element_copy, at tree-sra.c:1466)
PR tree-opt/16383
        * tree-ssa-ccp.c (fold_stmt_r): Split out...
        * tree.c (fields_compatible_p, find_compatible_field): ... new.
        * tree.h (fields_compatible_p, find_compatible_field): Declare.
        * tree-sra.c (sra_hash_tree): Hash fields by offset.
        (sra_elt_eq): Use fields_compatible_p.
        (generate_one_element_ref): Use find_compatible_field.

From-SVN: r84524
2004-07-11 10:41:52 -07:00
Richard Henderson 71956db351 re PR tree-optimization/16422 (gcc.c-torture/execute/980223.c fails)
PR tree-opt/16422
        * tree-sra.c (generate_one_element_init): New.
        (generate_element_init): Use it.
        (scalarize_init): Push/pop gimplify context around it.
        (find_new_referenced_vars_1, find_new_referenced_vars): New.
        * gimplify.c (gimplify_expr): Allow SSA_NAME.

From-SVN: r84523
2004-07-11 10:33:02 -07:00
Tobias Schlüter a083c04af2 re PR fortran/15754 (Accepts assignment of the form P = NULL())
PR fortran/17574
* gfortran.dg/pr15754.f90: New test.

Add ChangeLog missing from previous commit.

From-SVN: r84522
2004-07-11 19:00:13 +02:00
Tobias Schlüter f23c56270e re PR fortran/15754 (Accepts assignment of the form P = NULL())
fortran/
PR fortran/15754
* expr.c (gfc_check_assign): Print ranks if incompatible. Issue
warning if assigning NULL().

testsuite/
PR fortran/17574
* gfortran.dg/pr15754.f90: New test.
the changes to expr.c were accidentally committed previously

From-SVN: r84521
2004-07-11 18:58:48 +02:00
Tobias Schlüter 5f0bbc1b07 Revert accidental commit
From-SVN: r84520
2004-07-11 18:55:00 +02:00
Tobias Schlüter 7dea5a9568 re PR fortran/16433 (wrong hexadecimal constant warning)
PR fortran/16433
* gfortran.dg/pr16433.f: New test.

From-SVN: r84519
2004-07-11 18:52:50 +02:00
Mark Wielaard eeb3298836 Reported by Roman Kennke <roman@ontographics.com> (bug #9331)
Reported by Roman Kennke <roman@ontographics.com> (bug #9331)
	* java/net/URLStreamHandler.java (parseURL): When url file part
	doesn't contain a '/' just ignore context.

From-SVN: r84518
2004-07-11 16:48:29 +00:00
Paul Brook 1e38f15929 re PR fortran/16303 (Complex logarithm function sometimes chooses a non-principal branch)
PR fortran/16303
	* m4/cexp.m4 (carg): Return -pi to pi.
	* generated/exp_c?.c: Regenerate.

From-SVN: r84516
2004-07-11 16:05:08 +00:00
Tobias Schlüter 0bbf5891c1 re PR fortran/16433 (wrong hexadecimal constant warning)
PR fortran/16433
* gfortran.dg/pr16433.f: New test.

From-SVN: r84515
2004-07-11 17:21:51 +02:00
Tobias Schlüter 88199e7c89 re PR fortran/16433 (wrong hexadecimal constant warning)
PR fortran/16433
* primary.c (match_boz_constant): Call gfc_notify_std only if
we actually have a non-standard boz-literal-constant.

From-SVN: r84514
2004-07-11 17:06:42 +02:00
Roger Sayle 6fd21094e5 rtlanal.c (insn_rtx_cost): New function, moved and renamed from combine.c's combine_insn_cost.
* rtlanal.c (insn_rtx_cost): New function, moved and renamed from
	combine.c's combine_insn_cost.
	* rtl.h (insn_rtx_cost): Prototype here.
	* combine.c (combine_insn_cost): Delete function.
	(combine_validate_cost): Update callers of combine_insn_cost to
	call insn_rtx_cost instead.
	(combine_instructions): Likewise.  Use NONJUMP_INSN_P to avoid
	requesting the rtx_cost of call and/or jump instructions.

	* ifcvt.c (total_bb_rtx_cost): Use insn_rtx_cost instead of calling
	rtx_cost directly.  Don't request/use the cost of call or jump
	instructions.  Return -1 if the cost of any instruction can't be
	determined (or the BB contains a function call).
	(find_if_case_1): Abort transformation if total_bb_rtx_cost returns
	-1 (i.e. can't determine the cost of any instruction or the basic
	block contains a subroutine call).
	(find_if_case_2): Likewise.

From-SVN: r84513
2004-07-11 14:37:57 +00:00
Roger Sayle 06a67bdd66 rs6000.c (struct processor_costs): Change semantics of fields to include the COST_N_INSNS scaling...
* rs6000.c (struct processor_costs): Change semantics of fields to
	include the COST_N_INSNS scaling, and update all initializers.
	(rs6000_rtx_costs): Don't use COSTS_N_INSNS on rs6000_cost fields.
	Use COSTS_N_INSNS(1) for NOT, SIGN_EXTEND, ZERO_EXTEND and COMPARE.
	Use rs6000_cost->fp for both FLOAT_TRUNCATE and UNSPEC_FRSP.  When
	optimizing for size, use COSTS_N_INSNS(1) for CALL and IF_THEN_ELSE.

From-SVN: r84512
2004-07-11 14:32:49 +00:00
Tobias Schlüter e08b5a758a re PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))
PR fortran/16404
* match.c (gfc_match_program): A program name is obligatory.
(gfc_match_return): RETURN in main program is an extension.
(gfc_match_block_data): A space is required before a block data
name.

From-SVN: r84511
2004-07-11 16:16:32 +02:00
Tobias Schlüter cdde7b65fa re PR fortran/16404 (should reject invalid code with -pedantic -std=f95 ? (x8))
PR fortran/16404
* io.c (match_io): Flag 'WRITE(...), ...' as extension.

From-SVN: r84510
2004-07-11 15:35:33 +02:00
Tobias Schlüter 953e663055 re PR fortran/16455 (print the location of a missing module fatal error)
PR fortran/16455
Fix ChangeLog

From-SVN: r84509
2004-07-11 15:06:26 +02:00
Tobias Schlüter 87bdc5f8fd re PR fortran/16455 (print the location of a missing module fatal error)
PR fortran/15455
* module.c (gfc_dump_module, gfc_use_module): Print locus
when opening of module file fails.

From-SVN: r84508
2004-07-11 15:04:32 +02:00
Joseph Myers 6ac4b58e49 * LANGUAGES: Remove obsolete information.
From-SVN: r84507
2004-07-11 12:54:14 +01:00
Ulrich Weigand bbb362e693 linux.h (MD_FALLBACK_FRAME_STATE_FOR): For SIGSEGV and SIGBUS signal frames...
ChangeLog:

	* config/s390/linux.h (MD_FALLBACK_FRAME_STATE_FOR): For SIGSEGV and
	SIGBUS signal frames, the PSW address points *to* the faulting
	instruction, not after it.

libjava/ChangeLog:

	* include/s390-signal.c (SIGNAL_HANDLER): Use SIGINFO-style prototype.
	(struct old_s390_kernel_sigaction): Likewise for k_sa_handler.
	(MAKE_THROW_FRAME): Do not modify PSW address.
	(INIT_SEGV): Install SIGINFO-style signal handler.
	(INIT_FPE): Likewise.

From-SVN: r84506
2004-07-11 11:49:25 +00:00
Ulrich Weigand e5dce82f98 ffi.c (ffi_prep_args): Fix C aliasing violation.
* src/s390/ffi.c (ffi_prep_args): Fix C aliasing violation.
	(ffi_check_float_struct): Remove unused prototype.

From-SVN: r84505
2004-07-11 11:45:39 +00:00
Ulrich Weigand 578d146841 s390.c (legitimize_tls_address): Handle constant offsets added to TLS symbol addresses.
* config/s390/s390.c (legitimize_tls_address): Handle constant offsets
	added to TLS symbol addresses.

From-SVN: r84504
2004-07-11 11:44:09 +00:00
Phil Edwards d8be287168 regenerate with correct tools
From-SVN: r84503
2004-07-11 11:28:21 +00:00
Richard Henderson 79b4a8dcfb expmed.c (init_expmed): Use stack-local structures for temporary rtl.
* expmed.c (init_expmed): Use stack-local structures for
        temporary rtl.  Don't recognize shifts.

From-SVN: r84502
2004-07-11 04:20:44 -07:00
Richard Henderson 7e7d1b4b3f expr.c (store_expr): Don't fiddle subreg promotion for types with precision smaller than the mode.
* expr.c (store_expr): Don't fiddle subreg promotion for types
        with precision smaller than the mode.

From-SVN: r84501
2004-07-11 04:11:36 -07:00
Joseph Myers 370b733b3c * tree.h (all_types_permanent): Remove.
From-SVN: r84500
2004-07-11 11:04:57 +01:00
Joseph Myers 9dcf6e7366 langhooks.h (estimate_num_insns, [...]): Remove hooks.
* langhooks.h (estimate_num_insns, pushlevel, poplevel, set_block,
	maybe_build_cleanup, update_decl_after_saving): Remove hooks.
	* langhooks.c (lhd_clear_binding_stack): Remove.
	* langhooks-def.h (lhd_clear_binding_stack,
	LANG_HOOKS_MAYBE_BUILD_CLEANUP,
	LANG_HOOKS_UPDATE_DECL_AFTER_SAVING,
	LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS, LANG_HOOKS_PUSHLEVEL,
	LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
	(LANG_HOOKS_CLEAR_BINDING_STACK): Define to lhd_do_nothing.
	* system.h (LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS,
	LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_SET_BLOCK,
	LANG_HOOKS_MAYBE_BUILD_CLEANUP,
	LANG_HOOKS_UPDATE_DECL_AFTER_SAVING, LANG_HOOKS_POPLEVEL): Poison.
	* tree.h (poplevel): Don't declare.
	* c-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
	LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
	* objc/objc-lang.c (LANG_HOOKS_CLEAR_BINDING_STACK,
	LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
	Remove.

ada:
	* misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
	LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.

cp:
	* cp-lang.c (LANG_HOOKS_MAYBE_BUILD_CLEANUP, LANG_HOOKS_PUSHLEVEL,
	LANG_HOOKS_POPLEVEL, LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): Remove.
	* cp-tree.h (poplevel): Declare.
	(set_block): Remove.
	* decl.c (set_block): Remove.

fortran:
	* f95-lang.c (set_block): Remove.
	(gfc_clear_binding_stack): New.
	(LANG_HOOKS_CLEAR_BINDING_STACK): Define.
	(struct binding_level): Remove block_created_by_back_end.
	(clear_binding_level): Likewise.
	(poplevel): Don't handle block_created_by_back_end.

java:
	* java-tree.h (set_block): Remove.
	* lang.c (java_clear_binding_stack): New.
	(LANG_HOOKS_CLEAR_BINDING_STACK): Define.
	* decl.c (struct binding_level): Remove this_block.
	(clear_binding_level): Likewise.
	(poplevel): Don't handle this_block.
	(set_block): Remove.

treelang:
	* treetree.c (set_block): Remove.
	(struct binding_level): Remove block_created_by_back_end.
	(clear_binding_level): Likewise.
	(tree_code_create_function_initial,
	tree_code_create_function_wrapup): Call pushlevel and poplevel
	directly rather than through hooks.
	(poplevel): Don't handle block_created_by_back_end.

From-SVN: r84499
2004-07-11 10:53:06 +01:00
Joseph Myers fae1b38dc8 re PR tree-optimization/16437 (New c-torture failures after bitfield patch)
PR tree-optimization/16437
	* c-common.c (shorten_compare): Don't mark result of conversion to
	narrower signed type as overflowing.
	* fold-const.c (decode_field_reference): Determine whether
	signedness comes from outer type using precision rather than size.

testsuite:
	* gcc.c-torture/execute/bitfld-4.c: New test.

From-SVN: r84498
2004-07-11 10:45:39 +01:00