Commit Graph

59206 Commits

Author SHA1 Message Date
Richard Sandiford 5a1f395394 calls.c (shift_returned_value): Fix handling of non-integer TYPE_MODEs.
* calls.c (shift_returned_value): Fix handling of non-integer
	TYPE_MODEs.

From-SVN: r83595
2004-06-24 15:30:07 +00:00
Nathan Sidwell 061cae1fa9 reformat, remove '^M's
From-SVN: r83594
2004-06-24 15:05:35 +00:00
Richard Kenner aa7cb8c39e Add a blank.
From-SVN: r83593
2004-06-24 09:47:49 -04:00
Ulrich Weigand bb2d400f61 c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
* c-decl.c (finish_function): Do not check for DEFAULT_MAIN_RETURN.
	* system.h (DEFAULT_MAIN_RETURN): Poison.
	* doc/tm.texi (DEFAULT_MAIN_RETURN): Remove documentation.

From-SVN: r83592
2004-06-24 12:09:44 +00:00
Ben Elliston 79a4758dd5 * doc/cfg.texi (Edges): Fix typo.
From-SVN: r83591
2004-06-24 21:43:34 +10:00
Paul Brook 0cc3dda830 * config/arm/arm.c (arm_output_epilogue): Remove excess checks.
From-SVN: r83589
2004-06-24 11:01:56 +00:00
Giovanni Bajo bbb2a3456f tree-ssa.exp: Remove.
* g++.dg/tree-ssa/tree-ssa.exp: Remove. dg.exp already handles
	this directory.

From-SVN: r83588
2004-06-24 09:47:31 +00:00
Andreas Schwab 5e7752d2ac * cp-tree.h (enum cp_storage_class): Remove trailing comma.
From-SVN: r83587
2004-06-24 09:34:23 +00:00
Andrew Pinski b713a445f2 re PR middle-end/15988 (ICE in fold_convert with pointer-to-member-function)
2004-06-23  Andrew Pinski  <apinski@apple.com>

        PR middle-end/15988
        * fold-const.c (fold_convert): Types which are compatible
        can be converted with only a NOP_EXPR.

2004-06-23  Andrew Pinski  <apinski@apple.com>

        PR middle-end/15988
        * g++.dg/opt/ptrmem4.C: New test.

From-SVN: r83585
2004-06-23 23:51:56 -07:00
Mark Mitchell 62d1db179e Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.
* Make-lang.in (cp/lex.o): Do not depend on cp/lex.h.
	(cp/decl.o): Likewise.
	(cp/decl2.o): Likewise.
	(cp/pt.o): Likewise.
	(cp/semantics.o): Likewise.
	* config-lang.in (gtfiles): Do not reference cp/lex.h.
	* class.c: Do not include lex.h.
	(add_implicitly_declared_members): Do not use
	adding_implicit_members.
	(check_bases_and_members): Do not talk about grok_x_components.
	* cp/cp-tree.h (adding_implicit_members): Remove.
	(cp_storage_class): New type.
	(cp_decl_spec): Likewise.
	(cp_decl_specifier_seq): Likewise.
	(cp_parameter_declarator): Use it for the decl_specifiers field.
	(check_tag_decl): Adjust prototype.
	(shadow_tag): Likewise.
	(groktypename): Likewise.
	(start_decl): Likewise.
	(start_function): Likewise.
	(start_method): Likewise.
	(grok_x_components): Remove.
	(grokfield): Adjust prototype.
	(grokbitfield): Likewise.
	(finish_member_class_template): Remove.
	* decl.c: Do not include lex.h.
	(adding_implicit_members): Do not define.
	(check_tag_decl): Do not use trees to represent decl-specifiers.
	(shadow_tag): Likewise.
	(groktypename): Likewise.
	(start_decl): Likewise.
	(grokvardecl): Likewise.
	(grokdeclarator): Likewise.
	(grokparms): Likewise.
	(start_function): Likewise.
	(start_method): Likewise.
	* decl.h (grokdeclarator): Adjust prototype.
	* decl2.c: Do not include lex.h.
	(grok_x_components): Remove.
	(grokfield): Do not use trees to represent decl-specifiers.
	(grokbitfield): Likewise.
	* lex.c: Do not include lex.h.
	* lex.h: Remove.
	* parser.c: Include target.h.
	(clear_decl_specs): New function.
	(cp_parser_translation_unit): Do not use trees to represent
	decl-specifiers.
	(cp_parser_postfix_expression): Likewise.
	(cp_parser_new_type_id): Likewise.
	(cp_parser_condition): Likewise.
	(cp_parser_simple_declaration): Likewise.
	(cp_parser_decl_specifier_seq): Likewise.
	(cp_parser_function_specifier_opt): Likewise.
	(cp_parser_conversion_type_id): Likewise.
	(cp_parser_template_parameter): Likewise.
	(cp_parser_explicit_instantiation): Likewise.
	(cp_parser_type_specifier): Likewise.
	(cp_parser_simple_type_specifier): Likewise.
	(cp_parser_init_declarator): Likewise.
	(cp_parser_type_id): Likewise.
	(cp_parser_type_specifier_seq): Likewise.
	(cp_parser_parameter_declaration): Likewise.
	(cp_parser_member_declaration): Likewise.
	(cp_parser_exception_declaration): Likewise.
	(cp_parser_function_definition_from_specifiers_and_declarator):
	Likewise.
	(cp_parser_single_declaration): Likewise.
	(cp_parser_save_member_function_body): Likewise.
	(cp_parser_friend_p): Likewise.
	(cp_parser_set_storage_class): New function.
	(cp_parser_set_decl_spec_type): Likewise.
	* pt.c: Do not include lex.h.
	* semantics.c: Likewise.
	(finish_member_class_template): Remove.

From-SVN: r83584
2004-06-24 06:48:44 +00:00
Alan Modra 3a4d587b32 calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and pass raw n_named_args to it.
* calls.c (expand_call): Call INIT_CUMULATIVE_ARGS earlier, and
	pass raw n_named_args to it.
	* targhooks.c: Formatting.
	(hook_bool_CUMULATIVE_ARGS_false): Correct comment.

From-SVN: r83583
2004-06-24 15:40:35 +09:30
Richard Henderson 8c56bb8307 c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside non-constant size check.
* c-gimplify.c (gimplify_decl_stmt): Push gimplify_one_sizepos inside
	non-constant size check.  Gimplify the type too.  Tidy building
	BUILT_IN_STACK_ALLOC call

From-SVN: r83582
2004-06-23 22:35:16 -07:00
Roger Sayle d522060b39 c-common.c (expand_unordered_cmp): Delete.
* c-common.c (expand_unordered_cmp): Delete.
	(expand_tree_builtin): Delete.
	* c-common.h (expand_tree_builtin): Delete function prototype.
	* c-typeck.c (build_function_call): Don't call expand_tree_builtin.

	* call.c (build_cxx_call): Don't call expand_tree_builtin.  No
	longer take both "args" and "convert_args" as arguments.
	(build_op_delete_call): Update call to build_cxx_call.
	(build_over_call): Likewise, update call to build_cxx_call.
	* cp-tree.h (build_cxx_call): Update funtion prototype.
	* typeck.c (build_function_call): Don't call expand_tree_builtin.
	* rtti.c (throw_bad_cast): Update call to build_cxx_call.
	(throw_bad_typeid): Likewise.
	(build_dynamic_cast_1): Likewise.

From-SVN: r83579
2004-06-24 05:26:07 +00:00
Richard Henderson a7cc468aa3 gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or COMPONENT_REF variable fields unless they're non-constant.
* gimplify.c (gimplify_compound_lval): Don't set ARRAY_REF or
        COMPONENT_REF variable fields unless they're non-constant.

From-SVN: r83578
2004-06-23 22:21:27 -07:00
Robert Millan cfafe9734d Patch from Robert Millan.
* config.gcc: Merge kfreebsd*-gnu with linux* and add knetbsd*-gnu.
* config/i386/linux.h: Allow overriding of LINK_EMULATION,
  DYNAMIC_LINKER and register names in sc_ structure.
* config/kfreebsd-gnu.h: New. kfreebsd-gnu followup for linux.h.
* config/i386/kfreebsd-gnu.h: New. Ditto for i386-kfreebsd-gnu.
* config/knetbsd-gnu.h: New. Ditto for knetbsd-gnu.
* config/i386/knetbsd-gnu.h: New. Ditto for i386-knetbsd-gnu.
* config/kfreebsdgnu.h: Remove.
* config/t-kfreebsd-gnu: Likewise.
* config/i386/kfreebsdgnu.h: Likewise.

From-SVN: r83577
2004-06-23 19:56:23 -07:00
Eric Christopher d182275449 fold-const.c (make_range): Cleanup type checking through function.
2004-06-23  Eric Christopher  <echristo@redhat.com>

	* fold-const.c (make_range): Cleanup type checking through function.
	Remove orig_type. Replace with checks to exp_type and arg0_type.
	Clarify comment when converting from unsigned to signed.

From-SVN: r83576
2004-06-24 02:00:25 +00:00
Eric Christopher 2ac23d05c0 mips.c (mips_use_dfa_pipeline_interface): Add R3000.
2004-06-23  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.c (mips_use_dfa_pipeline_interface): Add R3000.
	* config/mips/mips.md: Remove R3000 scheduling description.
	* config/mips/3000.md: New file.

From-SVN: r83575
2004-06-24 01:51:30 +00:00
Ulrich Weigand 6590e19ab7 s390-protos.h (s390_emit_compare): Add prototype.
* config/s390/s390-protos.h (s390_emit_compare): Add prototype.
	(s390_emit_jump): Likewise.
	* config/s390/s390.c (s390_emit_compare): New function.
	(s390_emit_jump): Likewise.
	* config/s390/s390.md ("beq", "bne", "bgt", "bgtu", "blt", "bltu",
	"bge", "bgeu", "ble", "bleu", "bunordered", "bordered", "buneq",
	"bungt", "bunlt", "bunge", "bunle", "bltgt"): Use s390_emit_compare
	and s390_emit_jump.
	("cjump"): Remove, replace by ...
	("*cjump_64", "*cjump_31"): ... these insns.  Improve length default.
	("icjump", "*icjump_64", "*icjump_31"): Likewise.
	("trap"): Fix type attribute.
	("conditional_trap"): Use s390_emit_compare.
	("doloop_si"): Remove, replace by ...
	("doloop_si64", "doloop_si31"): ... these new insn_and_split.
	Merge existing splitter into insn_and_split.  Improve length default.
	("doloop_di"): Merge with existing splitter into insn_and_split.
	("doloop"): Adapt.
	("jump"): Convert to expander.  Use s390_emit_jump.
	("*jump_64", "*jump_31"): New insns.  Improve length default.

From-SVN: r83574
2004-06-24 00:49:07 +00:00
GCC Administrator 44ee9aef7b Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83572.2
2004-06-24 00:16:20 +00:00
GCC Administrator 9412376a49 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83571.2
2004-06-24 00:16:15 +00:00
Wu Yongwei 42dfcf84c2 gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
2004-06-23  Wu Yongwei  <adah@sh163.net>

	* gthr-win32.h (__GTHREAD_MUTEX_INIT_DEFAULT): Adjust.
	(__gthr_i486_lock_cmp_xchg): New inline assembly function.
	(__GTHR_W32_InterlockedCompareExchange): New macro to choose a
	suitable function for interlocked compare-and-exchange.
	(__gthread_mutex_trylock): Use
	__GTHR_W32_InterlockedCompareExchange.
	(__gthread_mutex_init_function, __gthread_mutex_lock,
	__gthread_mutex_trylock, __gthread_mutex_unlock): Adjust the
	initial counter value to work correctly under Windows 95.
	* config/i386/gthr-win32.c: Adjust include order.
	Define __GTHREAD_I486_INLINE_LOCK_PRIMITIVES before including
	gthr-win32.h.
	(__gthr_win32_mutex_init_function, __gthr_win32_mutex_lock,
	__gthr_win32_mutex_trylock, __gthr_win32_mutex_unlock): Adjust
	to match inline versions in gthr-win32.h.

From-SVN: r83569
2004-06-23 23:57:27 +00:00
David Edelsohn 11ac38b22e rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.
* config/rs6000/rs6000.c (rs6000_use_dfa_pipeline_interface): Delete.
	(TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Redefine a hook_int_void_1.
	(insvdi_rshift_rlwimi_p): New function.
	* config/rs6000/rs6000.md (insvdi_internal2/3): New patterns.
	(extendsfdf2): Convert to define_insn_and_split.
	* config/rs6000/rs6000-protos.h (insvdi_rshift_rlwimi_p): Prototype.

From-SVN: r83568
2004-06-23 17:19:00 -04:00
Andrew Pinski de46b2fe0d c-typeck.c (composite_type, [...]): Abort if we have type qualifiers at all.
2004-06-23  Andrew Pinski  <apinski@apple.com>

        * c-typeck.c (composite_type, <case ARRAY_TYPE>): Abort if we have
        type qualifiers at all.
        If both of the type domains are null and the new element type is
        the same as one of the, return the one which the element type.
        matches.
        Do not call qualify_type on the new type.

2004-06-23  Andrew Pinski  <apinski@apple.com>

        * gcc.dg/c90-array-quals-2.c: New test.

From-SVN: r83567
2004-06-23 13:53:17 -07:00
Ulrich Weigand 07f266aecd * config/s390/s390.h (DEFAULT_MAIN_RETURN): Remove.
From-SVN: r83566
2004-06-23 20:44:54 +00:00
Roger Sayle 7c243eef39 convert.c (strip_float_extension): Skip both NOP_EXPR and CONVERT_EXPR floating point extensions.
* convert.c (strip_float_extension): Skip both NOP_EXPR and
	CONVERT_EXPR floating point extensions.

From-SVN: r83565
2004-06-23 20:42:45 +00:00
Diego Novillo 33c94679bd Makefile.in (tree-vn.o): New.
* Makefile.in (tree-vn.o): New.
	(tree-ssa-pre.o): Don't depend on RTL_H.
	* tree-dfa.c (find_referenced_vars): Don't call init_tree_ssa.
	* tree-flow.h (struct var_ann_d): Remove field expr_set.
	(add_to_value, expressions_equal_p, get_value_handle, vn_compute,
	vn_lookup_or_add, vn_add, vn_lookup, vn_init, vn_delete): Declare.
	* tree-optimize.c (execute_init_datastructures): New local function.
	(pass_init_datastructures): New local variable.
	(init_tree_optimization_passes): Sequence pass_init_datastructures.
	* tree-pretty-print.c (MASK_POINTER): Remove.
	(dump_generic_node): Handle VALUE_HANDLE.
	* tree-ssa-pre.c: Move all value numbering routines to tree-vn.c.
	Update callers to use new function names.
	Use VALUE_HANDLE_ID and VALUE_HANDLE_EXPR_SET instead of
	variable annotations.
	* tree-ssa.c (init_tree_ssa): Call vn_init.
	(delete_tree_ssa): Call vn_delete.
	* tree-vn.c: New file.
	* tree.c (tree_size): Handle VALUE_HANDLE.
	(tree_node_structure): Likewise.
	(iterative_hash_expr): Likewise.
	* tree.def (VALUE_HANDLE): New code.
	* tree.h (struct tree_value_handle): New.
	(VALUE_HANDLE_ID): Define.
	(VALUE_HANDLE_EXPR_SET): Define.
	(enum tree_node_structure_enum): Add TS_VALUE_HANDLE.
	(union tree_node): Add struct tree_value_handle.

From-SVN: r83564
2004-06-23 16:12:44 -04:00
Nitin Yewale 881f20cbcd * gcc.dg/kpice1.c: New test.
From-SVN: r83563
2004-06-23 13:58:01 -06:00
Andrew Pinski fe7080d2c8 [multiple changes]
2004-06-23  Andrew Pinski  <apinski@apple.com>

        * c-typeck.c (composite_type):
        <case POINTER_TYPE>: Build a qualified type of
        the new type.
        <case ARRAY_TYPE>: Likewise.
        <case FUNCTION_TYPE>: Likewise.

2006-06-23  Andrew Pinski  <apinski@apple.com>

        * gcc.dg/c90-array-quals.c: New test.

From-SVN: r83557
2004-06-23 10:05:45 -07:00
Pat Haugen 701b17c2dc re PR rtl-optimization/15633 (Failure to propagate FDO counters by vpt results in performance regression)
2004-06-23  Pat Haugen  <pthaugen@us.ibm.com>

        PR optimization/15633
        * value-prof.c (divmod_fixed_value_transform): Compute probability
        of taking optimal path and pass along to gen_ routine.
        (mod_pow2_value_transform): Same.
        (mod_subtract_transform): Same.
        (gen_divmod_fixed_value): Add new probability parameter.
        Add probability to newly created jump.
        (gen_mod_pow2): Same.
        (gen_mod_subtract): Same.

From-SVN: r83555
2004-06-23 12:07:58 -04:00
Paolo Carlini dcbbf6f31b re PR libstdc++/16154 (input iterator concept too restrictive)
2004-06-23  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/16154
	* include/bits/boost_concept_check.h (struct _TrivialIteratorConcept):
	Don't require the _DefaultConstructibleConcept.
	(struct _ForwardIteratorConcept): Require it here.

From-SVN: r83554
2004-06-23 16:03:52 +00:00
Richard Earnshaw e1d2bd1e44 re PR target/15948 (THUMB: ICE with non-commutative cbranch)
* PR target/15948
* arm.md (bicsi3_cbranch): Add alternative to handle tying operands
one and two.

From-SVN: r83549
2004-06-23 11:39:32 +00:00
Richard Earnshaw 97358092a4 re PR target/15927 (THUMB -O2: strength-reduced iteration variable ends up off by 1)
PR target/15927
* arm.h (THUMB_SECONDARY_OUTPUT_RELOAD_CLASS): Don't need a secondary
reload if CLASS is BASE_REGS.

From-SVN: r83548
2004-06-23 10:39:50 +00:00
Paolo Bonzini 1c020272ce Makefile.tpl (HOST_EXPORTS): Fix pasto.
2004-06-22  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.tpl (HOST_EXPORTS): Fix pasto.
	* Makefile.in: Regenerate.

From-SVN: r83547
2004-06-23 09:10:36 +00:00
Richard Sandiford 5d81e3d373 gengtype-yacc.y (option): Avoid use of non-constant struct initializer.
* gengtype-yacc.y (option): Avoid use of non-constant struct
	initializer.

From-SVN: r83546
2004-06-23 09:08:21 +00:00
Nathan Sidwell 60bca1329b remove stray conflict marker
From-SVN: r83544
2004-06-23 08:43:25 +00:00
Nathan Sidwell c8619b9056 * doc/extend.texi (Function Attributes): Alphabetize.
From-SVN: r83543
2004-06-23 08:41:55 +00:00
Paolo Bonzini a52a0a7fea Makefile.tpl (configure-build-[+module+], [...]): Pass [+extra_configure_args+].
2004-06-22  Paolo Bonzini  <bonzini@gnu.org>

	* Makefile.tpl (configure-build-[+module+],
	configure-[+module+], configure-target-[+module+]): Pass
	[+extra_configure_args+].
	(all-build-[+module+], all-[+module+], check-[+module+],
	install-[+module+], [+make_target+]-[+module+],
	all-target-[+module+], check-target-[+module+],
	install-target-[+module+], [+make_target+]-target-[+module+]):
	Pass [+extra_make_args+].
	(HOST_EXPORTS): Include the former GCC_HOST_EXPORTS.
	(GCC_HOST_EXPORTS): Remove.
	(configure-gcc, all-gcc, GCC_STRAP_TARGETS, profiledbootstrap,
	cross, check-gcc, check-gcc-c++, install-gcc,
	gcc-no-fixedincludes, [+make_target+]-gcc, stage[+id+]-bubble):
	Replace GCC_HOST_EXPORTS with HOST_EXPORTS.
	* Makefile.in: Regenerate.

From-SVN: r83542
2004-06-23 08:36:05 +00:00
Richard Henderson 65355d53c3 c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
* c-gimplify.c (gimplify_decl_stmt): Update gimplify_type_sizes call.
        Use gimplify_and_add.
        * c-typeck.c (c_finish_if_stmt): Use NULL instead of empty stmt.
        * gimplify.c (build_and_jump, gimplify_exit_expr,
        gimplify_init_constructor, gimplify_save_expr, gimple_push_cleanup,
        gimplify_stmt, gimplify_expr): Likewise.
        (shortcut_cond_expr): Handle NULL arms of COND_EXPR.
        (gimplify_statement_list): Remove NULL entries.
        (gimplify_to_stmt_list): Handle NULL results.
        (gimplify_type_sizes): Add list_p argument.
        (gimplify_one_sizepos): Don't use internal pre/post queue.
        * tree-gimple.h (gimplify_type_sizes): Update.
ada/
        * trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.

From-SVN: r83539
2004-06-23 00:43:21 -07:00
Eric Christopher f241bf8947 rs6000.md (*insvsi_internal5/6): New patterns.
2004-06-22  Eric Christopher  <echristo@redhat.com>

	* config/rs6000/rs6000.md (*insvsi_internal5/6): New patterns.

From-SVN: r83538
2004-06-23 05:54:21 +00:00
Pat Haugen 649b2789d1 cfghooks.c (make_forwarder_block): Decrement count on fallthru edge when redirecting back edges.
* cfghooks.c (make_forwarder_block): Decrement count on fallthru edge
        when redirecting back edges.

        * cfghooks.c (split_block): Call make_single_succ_edge so that edge
        count/probability are set correctly.

From-SVN: r83537
2004-06-22 22:09:46 -06:00
Richard Henderson 1cc3d0854a * gcc.dg/noreturn-1.c (foo5): Update function does return lineno.
From-SVN: r83535
2004-06-22 19:51:06 -07:00
Richard Henderson e6b5a63037 c-typeck.c (emit_side_effect_warnings): Ignore error marks.
* c-typeck.c (emit_side_effect_warnings): Ignore error marks.
        (c_finish_stmt_expr): Likewise.

From-SVN: r83534
2004-06-22 19:33:25 -07:00
Richard Henderson 0397ac3575 i386.c (TARGET_STRUCT_VALUE_RTX): New.
* config/i386/i386.c (TARGET_STRUCT_VALUE_RTX): New.
        (ix86_return_in_memory): Move SSE vector return warning ...
        (ix86_struct_value_rtx): ... here.  New.

From-SVN: r83533
2004-06-22 19:27:22 -07:00
Loren J. Rittle 2e5a151084 * gcc.dg/builtins-config.h: Handle FreeBSD.
From-SVN: r83532
2004-06-23 02:25:06 +00:00
Richard Henderson 0f59171d71 tree.def (VTABLE_REF): Remove.
* tree.def (VTABLE_REF): Remove.
        (OBJ_TYPE_REF): New.
        (TRY_CATCH_EXPR, TRY_FINALLY_EXPR): Set type 's'.
        * expr.c (expand_expr_real_1): Replace VTABLE_REF with OBJ_TYPE_REF.
        * fold-const.c (non_lvalue): Likewise.
        * gimplify.c (gimplify_expr): Likewise.
        (gimplify_call_expr): Use is_gimple_call_addr.
        * langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New.
        * langhooks.h (fold_obj_type_ref): New.
        * tree-gimple.c (is_gimple_call_addr): New.
        * tree-gimple.h (is_gimple_call_addr): Declare.
        * tree-inline.c (inlinable_function_p): Fix merge error.
        (estimate_num_insns_1): Replace VTABLE_REF with OBJ_TYPE_REF.
        * tree-pretty-print.c (dump_generic_node): Likewise.
        (print_call_name): Handle OBJ_TYPE_REF.
        * tree-ssa-ccp.c (fold_stmt): Fold OBJ_TYPE_REF.
        * tree-ssa-operands.c (get_expr_operands): Handle OBJ_TYPE_REF.
        * tree.h (OBJ_TYPE_REF_EXPR): New.
        (OBJ_TYPE_REF_OBJECT, OBJ_TYPE_REF_TOKEN): New.
        * doc/c-tree.texi (VTABLE_REF): Remove.
        * objc/objc-act.c (build_objc_method_call): Build an OBJ_TYPE_REF.
cp/
        * class.c (build_vfn_ref): Take a pointer not object.  Build
        an OBJ_TYPE_REF.
        (cp_fold_obj_type_ref): New.
        * call.c (build_over_call): Update build_vfn_ref call.
        * cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New.
        * cp-tree.h (cp_fold_obj_type_ref): Declare.
testsuite/
        * g++.dg/opt/devirt1.C: New.

From-SVN: r83531
2004-06-22 17:26:04 -07:00
GCC Administrator 2f60699380 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83529.2
2004-06-23 00:16:16 +00:00
GCC Administrator d52635f82e Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r83527.2
2004-06-23 00:16:10 +00:00
Richard Henderson a926b253fc re PR middle-end/16026 (ICE in function.c:4804, assign_parms, when -mpowerpc64 & half-word operation)
PR middle-end/16026
        * function.c (assign_parms): Don't abort for overaligned PARALLEL.

From-SVN: r83525
2004-06-22 16:54:46 -07:00
Joseph Myers 1eb38ecbd6 * Makefile.in (distclean): Don't try to remove empty directories.
From-SVN: r83523
2004-06-22 23:27:16 +01:00
Alexandre Oliva fa94878458 istream.tcc (getline): Make sure arguments passed to min/max have the same type.
* include/bits/istream.tcc (getline): Make sure arguments passed
to min/max have the same type.
* include/bits/locale_facets.tcc (__verify_grouping): Likewise.
* include/bits/stl_deque.h (_Deque_base::_Deque_base): Likewise.

From-SVN: r83522
2004-06-22 22:22:14 +00:00