1. 01 Jan, 2003 1 commit
    • call.c, [...]: Replace "GNU CC" with "GCC" in the copyright header. · f5adbb8d
      	* call.c, class.c, cp-lang.c, cp-tree.h, cvt.c, dump.c, error.c,
      	  except.c, expr.c friend.c, g++spec.c, init.c, lang-options.h,
      	  lang-specs.h, lex.c, mangle.c, method.c, optimize.c, parser.c,
      	  pt.c, ptree.c, repo.c, rtti.c, search.c, semantics.c, tree.c,
      	  typeck.c, typeck2.c: Replace "GNU CC" with "GCC" in the
      	  copyright header.
      	* lex.h: parse.y is dead, so don't mention it.  Also replace the
      	  copyright header with the default GNU copyright header.
      
      From-SVN: r60738
      Steven Bosscher committed
  2. 28 Dec, 2002 1 commit
    • Make-lang.in (po-generated): Remove parse.c. · a723baf1
      	* Make-lang.in (po-generated): Remove parse.c.
      	(CXX_OBJS): Remove parse.o and spew.o.  Add parser.o.
      	($(srcdir)/cp/parse.h): Remove target.
      	($(srcdir)/cp/parse.c): Likewise.
      	(gt-cp-parse.h): Likewise.
      	(gt-cp-parser.h): New target.
      	(c++.distclean): Do not remove parse.output.
      	(c++.maintainer-clean): Do not remove parse.c or parse.h.
      	(cp/spew.o): Remove target.
      	(cp/lex.o): Adjust dependencies.
      	(cp/pt.o): Likewise.
      	(cp/parse.o): Likewise.
      	(cp/TAGS): Do not mention parse.c.
      	(cp/parser.o): New target.
      	* NEWS: Mention the new parser.
      	* call.c (build_scoped_method_call): Simplify.
      	(build_method_call): Likewise.
      	(build_new_function_call): Adjust calls to add_function_candidate
      	and add_template_candidate.
      	(build_new_op): Improve handling of erroroneous operands.
      	(convert_default_arg): Remove circular argument processing.
      	(name_as_c_string): New function.
      	(build_new_method_call): Use it.
      	(perform_implicit_conversion): Use error_operand_p.
      	* class.c (finish_struct_anon): Use constructor_name_p.
      	(check_field_decls): Likewise.
      	(pop_nested_class): Use OVL_NEXT, not OVL_CHAIN.
      	(resolve_address_of_overloaded_function): Likewise.
      	(instantiate_type): Tweak pointer-to-member handling.
      	(get_primary_binfo): Remove incorrect assertion.
      	* config-lang.in (gtfiles): Add parser.c, remove parse.c.
      	* cp-tree.h (DEFARG_TOKENS): New macro.
      	(default_arg): New structure.
      	(cp_tree_node_structure_enum): Add TS_CP_DEFAULT_ARG.
      	(lang_tree_node): Add default_arg.
      	(cp_tree_index): Add CPTI_TYPE_INFO_REF_TYPE.
      	(type_info_ref_type): New macro.
      	(saved_scope): Make processing_explicit_instantiation a boolean.
      	(check_access): New field.
      	(unparsed_text): Remove.
      	(language_function): Remove unparsed_inlines.
      	(error_operand_p): New macro.
      	(lang_decl): Adjust pending_inline_info.
      	(DEFARG_POINTER): Remove.
      	(tag_types): Add typenames.
      	(lookup_ualified_name): Declare.
      	(lookup_name_real): Likewise.
      	(shadow_tag): Adjust prototype.
      	(get_scope_of_declarator): Declare it.
      	(process_next_inline): Remove it.
      	(check_for_missing_semicolon): Likewise.
      	(maybe_get_template_decl_from_type_decl): Declare it.
      	(finish_label_stmt): Adjust prototype.
      	(finish_non_static_data_meber): Declare it.
      	(finish_pseudo_destructor_call_expr): Rename to ...
      	(finish_pseudo_destructor_expr): ... this.
      	(finish_compound_literal): Declare it.
      	(begin_inline_definitions): Remove it.
      	(init_spew): Remove.
      	(peekyylex): Likewise.
      	(arbitrate_lookup): Likewise.
      	(frob_opname): Likewise.
      	(maybe_snarf_defarg): Likewise.
      	(add_defarg_fn): Likewise.
      	(do_pending_defargs): Likewise.
      	(done_pending_defargs): Likewise.
      	(unprocessed_defarg_fn): Likewise.
      	(replace_defarg): Likewise.
      	(end_input): Likewise.
      	(get_overloaded_fn): Likewise.
      	* cvt.c (convert_to_reference): Improve error handling.
      	* decl.c (lookup_name_real): Do not declare it static.
      	(maybe_push_to_top_level): Set check_access.
      	(identifier_type_value): Adjust call to lookup_name_real.
      	(lookup_qualified_name): New method.
      	(lookup_name_real): Remove special-case parsing code.
      	(lookup_name-nonclass): Adjust call to lookup_name_real.
      	(lookup_name_namespace_only): Likewise.
      	(lookup_name): Likewise.
      	(check_tag_decl): Return the type declared.
      	(shadow_tag): Likewise.
      	(register_dtor_fn): Tweak check_access.
      	(grokfndecl): Use constructor_name_p.
      	(get_scope_of_declarator): New function.
      	(grokdeclarator): Obscure tweaks for slightly different declarator
      	representations.
      	(start_method): Return error_mark_node to indicate failure.
      	(cp_tree_node_structure_enum): Use TS_CP_DEFAULT_ARG for DEFAULT_ARGs.
      	* decl2.c (constructor_name_full): Simplify.
      	(constructor_name): Use it.
      	(build_expr_from_tree): Adjust for changes to do new parser.
      	(push_scope): Improve robustness.
      	(validate_nonmember_using_decl): Process declarations, not names.
      	(do_class_using_decl): Likewise.
      	(handle_class_head): Do not mess with CLASSTYPE_DECLARED_CLASS
      	here.
      	* error.c (dump_expr): Handle IDENTIFIER_NODEs and BASELINKs.
      	* expr.c (cxx_expand_expr): Handle BASELINKs.
      	* init.c (member_init_ok_or_else): Issue more errors.
      	(build_offset_ref): Tweak handling of FUNCTION_DECLs.
      	* lex.c: Do not include parse.h.
      	(yypring): Do not declare.
      	(yylval): Likewise.
      	(make_reference_declarator): Remove error-generating code.
      	(rid_to_yy): Remove.
      	(cxx_init): Do not call init_spew.
      	(yypring): Remove.
      	(check_for_missing_semicolon): Remove.
      	* lex.h (got_scope): Remove.
      	(got_object): Remove.
      	* method.c (hack_identifier): Use finish_non_static_data_member.
      	(implicitly_declare_fn): Adjust use of constructor_name.
      	* parser.c: New file.
      	* pt.c (parse.h): Do not include it.
      	(maybe_get_template_decl_from_template): Do not declare it.
      	(finish_member_template_decl): Tweak.
      	(begin_explicit_instantiation): Adjust for
      	processing_explicit_instantiation being boolean.
      	(end_explicit_instantiation): Likewise.
      	(maybe_process_partial_specialization): Tighten specialization
      	test.
      	(retrieve_local_specialization): Adjust ue of hash table.
      	(eq_local_specializations): New function.
      	(register_local_specialization): Likewise.
      	(push_template_decl_real): Remove unnecessary test.
      	(maybe_get_template_decl_from_type_decl): Don't make it static.
      	(for_each_template_parm_r): Handle TYPEOF_TYPE.
      	(tsubst_copy): Use retrieive_local_specialization to handle
      	PARM_DECL.  Adjust handling of CONST_DECLs.  Handle BASELINKs.
      	Handle COMPONENT_REFs with pseudo-destructor-expressions.
      	Simplify handling of CALL_EXPR and METHOD_CALL_EXPR.
      	(tsubst_expr): Pass decls, not names, to do_local_using_decl.
      	(unify): Tweak handling of CONST_DECLs.
      	(regenerate_decl_from_template): Use push_nested_class.
      	(template_for_substitution): New funciton.
      	(instantiate_decl): Use it.  Register parameters as local
      	specializations.
      	* rtti.c (init_rtti_processing): Set type_info_ref_type.
      	(build_typeid): Use it.
      	(get_typeid): Likeise.
      	* search.c (accessible_p): Use check_access, not
      	flag_access_control.
      	(adjust_result_of_qualified_name_lookup): Pay attention to the
      	context_class.
      	* semantics.c (finish_asm_stmt): Adjust error handling.
      	(finish_label_stmt): Return the statement.
      	(finish_non_static_data_member): New function.
      	(finish_class_expr): Handle BASELINKs.
      	(finish_call_expr): Handle PSEUDO_DTOR_EXPR.
      	(finish_object_call_expr): Simplify handling during templates.
      	(finish_pseudo_destructor_call_expr): Rename to ...
      	(finish_pseudo_dtor_expr): ... this.
      	(finish_compound_literal): New function.
      	(begin_inline_definitions): Remove.
      	(finish_sizeof): Remove special template handling.
      	* spew.c: Do not include parse.h.
      	* tree.c (get_overloaded_fn): Remove.
      	* typeck.c (build_class_member_access_expr): Handle
      	PSEUDO_DTOR_EXPR.  Adjust handling of static member functions.
      	(lookup_destructor): New function.
      	(finish_class_member_access_expr): Use it.
      	(convert_arguments): Simplify.
      	(build_unary_op): Handle BASELINKs.
      
      From-SVN: r60560
      Mark Mitchell committed
  3. 16 Dec, 2002 1 commit
  4. 05 Dec, 2002 1 commit
  5. 04 Dec, 2002 1 commit
  6. 03 Dec, 2002 1 commit
    • re PR c++/8720 (ICE with bitwise or (3 operands)) · 5089de93
      	PR c++/8720
      	* spew.c (remove_last_token): Make sure that last_chunk is set
      	correctly.
      
      	PR c++/8615
      	* error.c (dump_expr): Handle character constants with
      	TREE_OVERFLOW set.
      
      	PR c++/8720
      	* g++.dg/parse/defarg1.C: New test.
      
      	PR c++/8615
      	* g++.dg/template/char1.C: New test.
      
      From-SVN: r59757
      Mark Mitchell committed
  7. 16 Oct, 2002 1 commit
    • real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS as arguments. · da6eec72
      gcc/
              * real.c (real_to_decimal): Accept BUF_SIZE and CROP_TRAILING_ZEROS
              as arguments.  Bound DIGITS by the available buffer size.
              (real_to_hexadecimal): Likewise.
              * real.h (real_to_decimal, real_to_hexadecimal): Update prototypes.
              (REAL_VALUE_TO_DECIMAL): Remove.
              * c-common.c, c-pretty-print.c, print-rtl.c, print-tree.c,
              sched-vis.c, config/arc/arc.c, config/c4x/c4x.c, config/fr30/fr30.c,
              config/i370/i370.h, config/i386/i386.c, config/i960/i960.c,
              config/ip2k/ip2k.c, config/m32r/m32r.c, config/m68hc11/m68hc11.c,
              config/m68k/hp320.h, config/m68k/m68k.h, config/m68k/sun2o4.h,
              config/m68k/sun3.h, config/mips/mips.c, config/ns32k/ns32k.c,
              config/pdp11/pdp11.h, config/vax/vax.h: Update all callers to
              use real_to_decimal directly, and with the proper arguments.
              * doc/tm.texi (REAL_VALUE_TO_DECIMAL): Remove.
      
      gcc/cp/
              * error.c (dump_expr): Use real_to_decimal directly, and with
              the new arguments.
      
      gcc/f/
              * target.h (ffetarget_print_real1, ffetarget_print_real2): Use
              real_to_decimal directly, and with the new arguments.
      
      From-SVN: r58187
      Richard Henderson committed
  8. 05 Oct, 2002 1 commit
  9. 14 Sep, 2002 1 commit
    • error.c: Fix comment formatting. · c6002625
      	* error.c: Fix comment formatting.
      	* except.c: Likewise.
      	* expr.c: Likewise.
      	* friend.c: Likewise.
      	* g++spec.c: Likewise.
      	* init.c: Likewise.
      	* lex.c: Likewise.
      	* mangle.c: Likewise.
      	* method.c: Likewise.
      	* optimize.c: Likewise.
      	* pt.c: Likewise.
      	* rtti.c: Likewise.
      	* search.c: Likewise.
      	* semantics.c: Likewise.
      	* spew.c: Likewise.
      	* tree.c: Likewise.
      	* typeck.c: Likewise.
      	* typeck2.c: Likewise.
      
      From-SVN: r57138
      Kazu Hirata committed
  10. 09 Aug, 2002 1 commit
    • call.c (add_builtin_candidate): legal -> valid, illegal -> invalid. · 0e339752
              * call.c (add_builtin_candidate): legal -> valid, illegal -> invalid.
              (type_decays_to): Likewise.
              * class.c (find_final_overrider): Likewise.
              (maybe_note_name_used_in_class): Likewise.
              * decl.c (current_tmpl_spec_kind): Likewise.
              (add_binding): Likewise.
              (push_class_binding): Likewise.
              (duplicate_decls): Likewise.
              (layout_var_decl): Likewise.
              (grokfndecl): Likewise.
              (grokdeclarator): Likewise.
              (check_default_argument): Likewise.
              * decl2.c (handle_class_head): Likewise.
              * error.c (dump_template_decl): Likewise.
              * init.c (build_offset_ref): Likewise.
              * pt.c (check_specialization_scope): Likewise.
              (determine_specialization): Likewise.
              (check_explicit_specialization): Likewise.
              (maybe_check_template_type): Likewise.
              (process_partial_specialization): Likewise.
              (check_default_tmpl_args): Likewise.
              (push_template_decl_real): Likewise.
              (convert_template_argument): Likewise.
              (try_class_unification): Likewise.
              (get_bindings_real): Likewise.
              (do_decl_instantiation): Likewise.
              * semantics.c (begin_function_definition): Likewise.
              (finish_member_declaration): Likewise.
              (check_multiple_declarators): Likewise.
              * typeck.c (comp_array_types): Likewise.
              (comptypes): Likewise.
              (expr_sizeof): Likewise.
              (build_binary_op): Likewise.
              (dubious_conversion_warnings): Likewise.
              (check_return_expr): Likewise.
      
      From-SVN: r56144
      Mike Stump committed
  11. 08 Aug, 2002 1 commit
    • Rework build_component_ref. · 50ad9642
      	* call.c (build_vfield_ref): Do not go through build_component_ref.
      	(build_field_call): Use build_class_member_access_expr.
      	(build_user_type_conversion_1): Use BASELINK_FUNCTIONS.
      	(build_object_call): Likewise.
      	* class.c (convert_to_base): New function.
      	(type_requires_array_cookie): Use BASELINK_FUNCTIONS.
      	(instantiate_type): Handle BASELINKs.
      	* cp-tree.def (BASELINK): New tree code.
      	* cp-tree.h (BASELINK_P): Reimplement.
      	(SET_BASELINK_P): Remove.
      	(BASELINK_BINFO): Reimplement.
      	(BASELINK_FUNCTIONS): Likewise.
      	(BASELINK_ACCESS_BINFO): Likewise.
      	(BASELINK_OPTYPE): Likewise.
      	(convert_to_base): New function.
      	(name_p): Likewise.
      	(build_object_ref): Remove.
      	(build_component_ref_1): Likewise.
      	(build_component_ref): Likewise.
      	(build_x_component_ref): Likewise.
      	(build_class_member_access_expr): New function.
      	(finish_class_member_access_expr): Likewise.
      	(build_ptrmemfunc_access_expr): Likewise.
      	* decl.c (grokdeclarator): Handle BASELINKs.
      	* decl2. (build_expr_from_tree): Handle COMPONENT_REFs by using
      	finish_class_member_access_expr.
      	(arg_assoc): Handle BASELINKs.
      	(do_class_using_decl): Likewise.
      	* error.c (dump_decl): Likewise.
      	(dump_expr): Use build_ptrmemfunc_access_expr.
      	* except.c (dtor_nothrow): Use CLASSTYPE_DESTRUCTORS to find
      	destructors.
      	(build_throw): Use BASELINK_FUNCTIONS.
      	* init.c (perform_member_init): Use
      	build_class_member_access_expr.
      	(build_offset_ref): Handle BASELINKs.  Use
      	build_class_member_access_expr.
      	* method.c (hack_identifier): Likewise.
      	* parse.y (do_id): Use BASELINK, not TREE_LIST.
      	(primary): Remove uses of build_object_ref.
      	* pt.c (lookup_template_function): Handle BASELINKs.
      	(resolve_overloaded_unification): Likewise.
      	* search.c (build_baselink): Build a BASELINK, not a TREE_LIST.
      	(lookup_field): Use BASELINK, not TREE_LIST.
      	(lookup_fnfiels): Likewise.
      	(setup_class_bindings): Likewise.
      	* semantics.c (finish_object_call_expr): Do not use
      	build_method_call when we already know what function is being
      	called.
      	* spew.c (identifier_type): Use BASELINK, not TREE_LIST.
      	* tree.c (really_overloaded_fn): Use OVL_CHAIN for OVERLOADs, not
      	TREE_CHAIN.
      	(name_p): New function.
      	* typeck.c (build_object_ref): Remove.
      	(build_component_ref_1): Likewise.
      	(build_x_component_ref): Likewise.
      	(build_class_member_access_expr): New function.
      	(finish_class_member_access_expr): Likewise.
      	(build_ptrmemfunc_access_expr): Likewise.
      	(get_member_function_from_ptrfunc): Use
      	build_ptrmemfunc_access_expr.
      	(build_binary_op): Likewise.
      	(build_unary_op): Likewise.
      	(build_ptrmemfunc): Likewise.
      	(pfn_from_ptrmemfunc): Likewise.
      	* typeck2.c (build_m_component_ref): Adjust comment.
      
      	* g++.dg/abi/offsetof.C: Tweak error messages.
      	* g++.old-deja/g++.mike/p10769a.C: Likewise.
      
      From-SVN: r56117
      Mark Mitchell committed
  12. 05 Aug, 2002 1 commit
    • Index: ChangeLog · b3426eb9
      2002-08-05  Geoffrey Keating  <geoffk@redhat.com>
      
      	* attribs.c: Don't include obstack.h.
      	* builtins.c: Likewise.
      	* cfganal.c: Likewise.
      	* cfgbuild.c: Likewise.
      	* cfgcleanup.c: Likewise.
      	* emit-rtl.c: Likewise.
      	* loop.c: Likewise.
      	* stmt.c: Likewise.
      
      Index: cp/ChangeLog
      2002-08-05  Geoffrey Keating  <geoffk@redhat.com>
      
      	* class.c: Don't include obstack.h.
      	(popclass):
      	* decl2.c: Delete bogus comment.
      	* error.c: Don't include obstack.h.
      	* except.c: Likewise.
      	(dump_type): Correct comment.
      	* method.c: Don't include obstack.h.
      	* tree.c: Likewise.
      
      Index: java/ChangeLog
      2002-08-05  Geoffrey Keating  <geoffk@redhat.com>
      
      	* mangle_name.c: Don't include obstack.h twice.
      	* xref.c: Don't include obstack.h.
      
      From-SVN: r56055
      Geoffrey Keating committed
  13. 25 Jul, 2002 1 commit
  14. 07 Jul, 2002 1 commit
  15. 25 Jun, 2002 1 commit
    • call.c (build_op_delete_call): Use BASELINK_FUNCTIONS. · da15dae6
      	* call.c (build_op_delete_call): Use BASELINK_FUNCTIONS.
      	* class.c (handle_using_decl): Likewise.
      	(instantiate_type): Likewise.
      	* cp-tree.h (BASELINK_FUNCTIONS): New macro.
      	(xref_basetypes): Change prototype.
      	(begin_mem_initializers): New function.
      	(get_overloaded_fn): Likewise.
      	* decl.c (xref_basetypes): Simplify.
      	* error.c (dump_expr): Use BASELINK_FUNCTIONS.
      	* init.c (build_offset_ref): Likewise.
      	* parse.y (base_init): Use begin_mem_initializers().
      	(structsp): Adjust call to xref_basetypes.
      	* pt.c (determine_specialization): Use BASELINK_FUNCTIONS.
      	(instantiate_class_template): Adjust call to xref_basetypes.
      	* semantics.c (begin_mem_initializers): New function.
      	* tree.c (is_overloaded_fn): Use BASELINK_FUNCTIONS.
      	(really_overlaoded_fn): Likewise.
      	(get_overloaded_fn): New function.'
      	(get_first_fn): USe BASELINK_FUNCTIONS.
      
      From-SVN: r54989
      Mark Mitchell committed
  16. 06 Jun, 2002 1 commit
  17. 05 Jun, 2002 1 commit
    • toplev.h (report_error_function): Remove. · 47b69537
      	* toplev.h (report_error_function): Remove.
      
      	* diagnostic.h (location_t): New datatype.
      	(text_info): Likewise.
      	(diagnostic_info): Likewise.
      	(output_prefix): New macro.
      	(diagnostic_last_function_changed): Likewise.
      	(diagnostic_set_last_function): Likewise.
      	(diagnostic_last_module_changed): Likewise.
      	(diagnostic_set_last_module): Likewise.
      	(report_diagnostic): Now macro.
      	(diagnostic_set_info): Declare.
      
      	* diagnostic.c (report_problematic_module): Rename to
      	diagnostic_repor_current_module.
      	(set_diagnostic_context): Remove.
      	(count_error): Rename to diagnostic_error_count.
      	(error_function_changed): Remove.
      	(record_last_error_function): Likewise.
      	(error_module_changed): Likewise.
      	(record_last_error_module): Likewise.
      	(context_as_prefix): Rename to diagnostic_build_prefix.
      	(flush_diagnostic_buffer): Rename to diagnostic_flush_buffer.
      	(diagnostic_set_info): New function.
      
      	* objc/objc-act.c: #include diagnostic.h
      	(error_with_ivar): Adjust call to count_error.
      	(warn_with_method): Likewise.
      	* objc/Make-lang.in (objc-act.o): Depend on diagnostic.h
      
      cp/
      2002-06-04  Gabriel Dos Reis  <gdr@codesourcery.com>
      
      	* error.c (cp_diagnostic_starter): Adjust call.
      	(maybe_print_instantiation_context): Change prototype to take a
      	'diagnostic_info *'.
      	(print_instantiation_full_context): Likewise.
      	(print_instantiation_partial_context): Likewise.
      	(cp_diagnostic_starter): Likewise.
      	(cp_diagnostic_finalizer): Likewise.
      	(cp_print_error_function): Likewise.
      	(cp_printer): Take a secondary parameter as a 'text_info *'.
      	Remove output_state savings.  Adjust calls.
      
      f/
      2002-06-04  Gabriel Dos Reis  <gdr@codesourcery.com>
      
      	* bad.c (ffebad_start_): Adjust call to count_error.
      	* Make-lang.in (f/bad.o): Depend on diagnostic.h
      	* bad.c: #include diagnostic.h
      
      From-SVN: r54291
      Gabriel Dos Reis committed
  18. 19 May, 2002 1 commit
  19. 14 Apr, 2002 1 commit
    • diagnostic.h (output_buffer_state): Redefine. · bd6bec6b
      	* diagnostic.h (output_buffer_state): Redefine.
      	(output_format_decoder): New macro.
      	(output_prefixing_rule): Likewise.
      	(output_line_cutoff): Likewise.
      	(diagnostic_format_decoder): Adjust.
      	(diagnostic_prefixing_rule): Likewise.
      	(diagnostic_line_cutoff): Likewise.
      	(diagnostic_state): Likewise.
      	(diagnostic_kind_count): Likewise.
      	(diagnostic_buffer): Now a macro.
      
      	* diagnostic.c (diagnostic_buffer): Remove definition.
      	(output_is_line_wrapping): Adjust.
      	(set_real_maximum_length): Likewise.
      	(output_set_maximum_length): Likewise.
      	(init_output_buffer): Likewise.
      	(lhd_print_error_function): Likewise.
      	(output_do_verbatim): Likewise.
      
      cp/
      	* error.c (cxx_print_error_function): Adjust call to macros.
      
      From-SVN: r52307
      Gabriel Dos Reis committed
  20. 06 Apr, 2002 1 commit
  21. 31 Mar, 2002 1 commit
    • diagnostic.c (print_error_function): Remove. · 7cb32822
      	* diagnostic.c (print_error_function): Remove.
      	(default_print_error_function): Rename.
      	(report_error_function): Update.
      	* diagnostic.h (print_error_function): Remove.
      	(default_print_error_function): Remove.
      	* langhooks-def.h (struct diagnostic_context): Predeclare.
      	(lhd_print_error_function, LANG_HOOKS_PRINT_ERROR_FUNCTION): New.
      	(LANG_HOOKS_INITIALIZER): Update.
      	* langhooks.h (struct diagnostic context): Predeclare.
      	(struct lang_hooks): New hook.
      cp:
      	* Make-lang.in (error.o): Update.
      	* cp-lang.c (LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine.
      	* cp-tree.h (struct diagnostic_context): Predeclare.
      	(cxx_print_error_function): New.
      	* error.c: Include langhooks-def.h.
      	(lang_print_error_function): Rename.  Update.
      	(init_error): Don't set hook.
      f:
      	* com.c (lang_print_error_function): Rename.
      	(LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine.
      	(ffe_init): Don't set hook.
      java:
      	* lang.c (LANG_HOOKS_PRINT_ERROR_FUNCTION): Redefine.
      	(java_dummy_print): Remove.
      	(lang_print_error): Rename.  Exit early if inhibiting output.
      	(inhibit_error_printing_function): New.
      	(java_init): Don't set hook.
      	(lang_init_source): Use new boolean.
      
      From-SVN: r51672
      Neil Booth committed
  22. 29 Mar, 2002 1 commit
    • Makefile.in (convert.o, [...]): Update. · b0c48229
      	* Makefile.in (convert.o, calls.o, expmed.o): Update.
      	* attribs.c (handle_mode_attribute, handle_vector_size_attribute):
      	Use new hooks.
      	* builtin-types.def (BT_PTRMODE): Update.
      	* c-common.c (type_for_size): Rename c_common_type_for_size.
      	(type_for_mode): Similarly.
      	(shorten_compare, pointer_int_sum, c_common_nodes_and_builtins):
      	Use new hook.
      	* c-bommon.h (c_common_type_for_size, c_common_type_for_mode): New.
      	* c-decl.c (finish_enum, build_enumerator): Use new hooks.
      	* c-lang.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIZE):
      	Redefine.
      	* c-typeck.c (common_type, comptypes, default_conversion):
      	Use new hooks.
      	* calls.c: Include langhooks.h.
      	(emit_library_call_value_1): Use new hooks.  Avoid redundant
      	calls.
      	* convert.c: Include langhooks.h
      	(convert_to_pointer, convert_to_integer): Use new hooks.
      	* except.c (init_eh): Similarly.
      	* expmed.c: Include langhooks.h.
      	(expand_mult_add): Use new hooks.
      	* expr.c (store_expr, store_constructor, expand_expr, do_jump,
      	try_casesi): Similarly.
      	* fold-const.c (optimize_bit_field_compare, make_range,
      	decode_field_reference, fold_truthop, fold): Similarly.
      	* function.c (assign_stack_local_1, assign_stack_temp_for_type,
      	put_var_into_stack): Similarly.
      	* langhooks-def.h (LANG_HOOKS_TYPE_FOR_MODE,
      	LANG_HOOKS_TYPE_FOR_SIZE): New.
      	(LANG_HOOKS_TYPES_INITIALIZER): Update.
      	* langhooks.h (lang_hooks_for_types): New hooks.
      	* stmt.c (expand_decl_cleanup, emit_case_nodes): Use new hooks.
      	* tree.c (get_unwidened, get_narrower): Similarly.
      	* tree.h (type_for_mode, type_for_size): Remove.
      	* varasm.c (force_const_mem): Use new hooks.
      ada:
      	* gigi.h (type_for_size, type_for_mode): Rename.
      	* misc.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIZE):
      	Redefine.
      	* trans.c (tree_transform): Update.
      	* utils.c (gnat_init_decl_processing, init_gigi_decls,
      	builtin_function, float_type_for_size, signed_or_unsigned_type,
      	build_vms_descriptor, unchecked_convert): Update.
      	(type_for_mode, type_for_size): Rename.
      	* utils2.c (nonbinary_modular_operation): Update.
      cp:
      	* cp-lang.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIZE):
      	Redefine.
      	* cvt.c (cp_convert_to_pointer, type_promotes_to): Use new hooks.
      	* decl.c (finish_enum): Similarly.
      	* error.c (dump_type): Similarly.
      	* lex.c (cxx_init): Similarly.
      	* mangle.c (write_builtin_type): Similarly.
      	* typeck.c (comptypes): Similarly.
      f:
      	* com.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIZE):
      	Redefine.
      	(type_for_mode, type_for_size): Rename.
      	(signed_or_unsigned_type, signed_type, truthvalue_conversion,
      	unsigned_type):	Use new hooks.
      java:
      	* Make-lang.in (builtins.o): Update.
      	* boehm.c (get_boehm_type_descriptor): Update.
      	* builtins.c: Include langhooks.h.
      	* decl.c (java_init_decl_processing): Update.
      	* java-tree.h (java_type_for_mode, java_type_for_size): New.
      	* lang.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIaZE):
      	Redefine.
      	* typeck.c (type_for_mode, type_for_size): Update.
      objc:
      	* objc-act.c (handle_impent): Update.
      	* objc-lang.c (LANG_HOOKS_TYPE_FOR_MODE, LANG_HOOKS_TYPE_FOR_SIaZE):
      	Redefine.
      
      From-SVN: r51571
      Neil Booth committed
  23. 23 Mar, 2002 2 commits
    • real.h: Don't define REAL_INFINITY or REAL_IS_NOT_DOUBLE. · b216cd4a
      	* real.h: Don't define REAL_INFINITY or REAL_IS_NOT_DOUBLE.
      	Always make REAL_VALUE_TYPE a struct containing an array of
      	HOST_WIDE_INT, not a double.  Tidy up the code deciding how
      	big it is.  Don't declare or use union real_extract.
      
      	* emit-rtl.c (init_emit_once), varasm.c (immed_real_const_1,
      	decode_rtx_const, output_constant_pool), config/a29k/a29k.c
      	(print_operand), config/arm/arm.c (output_move_double),
      	config/arm/arm.md (consttable_4, consttable_8),
      	config/romp/romp.c (output_fpops), config/s390/s390.h
      	(ASM_OUTPUT_SPECIAL_POOL_ENTRY), config/xtensa/xtensa.c
      	(xtensa_output_literal): Don't use union real_extract.
      
      	* config/dsp16xx/dsp16xx.c (print_operand), config/i860/i860.c
      	(sfmode_constant_to_ulong), config/ns32k/merlin.h
      	(PRINT_OPERAND), config/ns32k/ns32k.c (print_operand),
      	config/pdp11/pdp11.h (PRINT_OPERAND), config/we32k/we32k.h
      	(PRINT_OPERAND): Don't use local version of union
      	real_extract.
      
      	* config/convex/convex.c (check_float_value), config/vax/vax.c
      	(vax_float_literal), config/m88k/m88k.md (divdf3),
      	config/dsp16xx/dsp16xx.md (fixuns_trunchfhi2),
      	config/pdp11/pdp11.c (output_move_quad): Don't do host
      	arithmetic on target floating point quantities.
      
      	* config/a29k/a29k.md, config/dsp16xx/dsp16xx.c
      	(output_dsp16xx_float_const): Don't test HOST_FLOAT_FORMAT.
      
      	* fold-const.c (fold), simplify-rtx.c (simplify_binary_real):
      	Use MODE_HAS_INFINITIES rather than #ifdef REAL_INFINITY.
      
      	* real.c (earith): Test INFINITY rather than REAL_INFINITY;
      	NANS implies INFINITY, so can drop #ifdef NANS inside #ifndef
      	INFINITY.
      	* print-rtl.c (print_rtx): Disable code which needs
      	floating-point emulator.
      	* libgcc2.c: Include float.h and use DBL_MANT_DIG,
      	FLT_MANT_DIG, to define DF_SIZE and SF_SIZE, rather than
      	depending on HOST_FLOAT_FORMAT to be defined properly.
      
      	* ch/grant.c, cp/error.c: Always use REAL_VALUE_TO_DECIMAL;
      	don't test REAL_IS_NOT_DOUBLE.
      
      	* config/1750a/1750a.c (get_double, float_label): Delete.
      	(print_operand): Delete huge commented-out chunk.  Use
      	REAL_VALUE_TO_DECIMAL.
      	* config/1750a/1750a-protos.h: Delete prototypes of deleted
      	functions.
      	* config/convex/convex.h: Always set TARGET_FLOAT_FORMAT to
      	IEEE_FLOAT_FORMAT.
      	* config/i370/i370.h (PRINT_OPERAND [TARGET_HLASM version]):
      	Use REAL_VALUE_TO_DECIMAL as ELF version does.
      	* config/m88k/m88k.c (real_power_of_2_operand,
      	legitimize_operand): Take the REAL_VALUE_TYPE and/or union
      	real_extract out of the union; run the input through
      	REAL_VALUE_TO_TARGET_DOUBLE, then plug the pair of longwords
      	from that into the union.
      	* config/pdp11/pdp11.c (output_move_double): Rearrange
      	parentheses to make automatic indenter happy.
      
      	* doc/tm.texi (Cross-compilation): Rename node to "Floating
      	Point" and rewrite to describe current situation.  Also adjust
      	documentation of REAL_VALUE_TO_TARGET_SINGLE and friends to
      	match code.
      	* doc/rtl.texi: Adjust cross reference.
      
      From-SVN: r51210
      Zack Weinberg committed
  24. 20 Mar, 2002 1 commit
    • Makefile.in: Update. · 7afff7cf
      	* Makefile.in: Update.
      	* c-common.c: Include langhooks.h.
      	(inline_forbidden_p): Use new hook.
      	* diagnostic.c: Include langhooks.h.
      	(format_with_decl, announce_function,
      	default_print_error_function): Use new hook.
      	* dwarf2out.c (dwarf2_name): Use new hook.
      	* function.c: Include langhooks.h.
      	(init_function_start): Use new hook.
      	* langhooks-def.h (lhd_decl_printable_name): New.
      	(LANGHOOKS_DECL_PRINTABLE_NAME): New.
      	(LANGHOOKS_INITIALIZER): Update.
      	* langhooks.c (lhd_decl_printable_name): New.
      	* langhooks.h (struct lang_hooks): New hook.
      	* toplev.c (decl_name, decl_printable_name): Remove.
      	(open_dump_file): Use new hook.
      	(process_options): Remove old hook.
      	* tree.h (decl_printable_name): Remove.
      ada:
      	* misc.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
      	(gnat_init): Remove old hook.
      cp:
      	* cp-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
      	* cp-tree.h (lang_printable_name): Rename.
      	* error.c (lang_decl_name): Use new hook.
      	* lex.c (cxx_init): Remove old hook.
      	* pt.c (tsubst_expr): Use new hook.
      	* tree.c (lang_printable_name): Rename.
      f:
      	* com.c (lang_printable_name): Rename.
      	(LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
      	(ffe_init): Don't use old hook.
      java:
      	* decl.c (start_java_method): Use new hook.
      	* lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
      	(java_init): Remove old hook.
      objc:
      	* objc-act.c (objc_init): Remove old hook.
      	(objc_printable_name): Export.
      	* objc-act.h (objc_printable_name): New.
      	* objc-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Redefine.
      
      From-SVN: r51066
      Neil Booth committed
  25. 05 Feb, 2002 1 commit
  26. 01 Feb, 2002 1 commit
  27. 23 Jan, 2002 1 commit
  28. 17 Jan, 2002 1 commit
  29. 07 Jan, 2002 1 commit
    • errors.c: Update copyright date. · b34c06e3
              * errors.c: Update copyright date.
              (print_scope_operator): Add parenthesis.
              (print_left_paren): Likewise.
              (print_right_paren): Likewise.
              (print_left_bracket): Likewise.
              (print_right_bracket): Likewise.
              (print_template_argument_list_start): Likewise.
              (print_template_argument_list_end): Likewise.
              (print_non_consecutive_character): Likewise.
              (print_tree_identifier): Likewise.
              (print_identifier): Likewise.
              (NEXT_CODE): Uppercase macro parameter.
              (ident_fndecl): Delete unused.
              (GLOBAL_THING): Likewise.
      
      From-SVN: r48599
      Graham Stott committed
  30. 18 Dec, 2001 2 commits
  31. 12 Dec, 2001 1 commit
    • cp-tree.h (DESTRUCTOR_DECL_PREFIX, [...]): Delete. · dc5c569a
      	* cp-tree.h (DESTRUCTOR_DECL_PREFIX, DESTRUCTOR_NAME_P,
      	ANON_PARMNAME_FORMAT, ANON_PARMNAME_P, DESTRUCTOR_NAME_FORMAT,
      	THIS_NAME_P): Delete.
      	* spew.c (read_process_identifier): Remove DESTRUCTOR_NAME_P,
      	THIS_NAME_P and ANON_PARMNAME_P tests from warning about clash
      	with internal naming scheme.
      	* error.c (dump_decl): Remove DESTRUCTOR_NAME_P use.
      
      From-SVN: r47936
      Jakub Jelinek committed
  32. 23 Oct, 2001 1 commit
    • cp-tree.def (UNBOUND_CLASS_TEMPLATE): New tree node. · b8c6534b
      	* cp-tree.def (UNBOUND_CLASS_TEMPLATE): New tree node.
      	* cp-tree.h (make_unbound_class_template): Prototype new function.
      	* decl.c (make_unbound_class_template): New function.
      	* decl2.c (arg_assoc_template_arg): Handle UNBOUND_CLASS_TEMPLATE.
      	* error.c (dump_type): Likewise.
      	* mangle.c (write_type): Likewise.
      	* parse.y (template_parm): Likewise.
      	(template_argument): Use make_unbound_class_template.
      	* pt.c (convert_template_argument): Handle UNBOUND_CLASS_TEMPLATE.
      	(tsubst): Likewise.
      	(tsubst_copy): Likewise.
      	(unify): Likewise.
      	* tree.c (walk_tree): Likewise.
      	* typeck.c (comptypes): Likewise.
      
      From-SVN: r46430
      Kriang Lerdsuwanakij committed
  33. 24 Sep, 2001 1 commit
    • top level: · 749ced52
      	* errors.h (warning, error, fatal, internal_error): Don't mark
      	with ATTRIBUTE_PRINTF_n.
      	* toplev.h (internal_error, fatal_io_error, warning, error,
      	pedwarn, pedwarn_with_file_and_line, warning_with_file_and_line,
      	error_with_file_and_line, sorry, error_for_asm, warning_for_asm):
      	Likewise.
      cp:
      	* Make-lang.in (CXX_OBJS): Take out cp/errfn.o.
      	(cp/errfn.o): Delete rule.
      	(cp/error.o): Depend on flags.h.
      	* errfn.c: Delete file.
      	* cp-tree.h: Declare warn_deprecated.  Remove definitions of
      	TFF_NAMESPACE_SCOPE, TFF_CLASS_SCOPE, TFF_CHASE_NAMESPACE_ALIAS,
      	and TFF_TEMPLATE_DEFAULT_ARGUMENTS. #define cp_error, cp_warning,
      	cp_pedwarn, and cp_compiler_error to error, warning, pedwarn, and
      	internal_error respectively.  Make cp_deprecated into a macro.
      	Don't define cp_printer typedef or declare cp_printers.
      	* error.c: Include flags.h.
      	Delete: struct tree_formatting_info, print_function_argument_list,
      	print_declaration, print_expression, print_function_declaration,
      	print_function_parameter, print_type_id, print_cv_qualifier_seq,
      	print_type_specifier_seq, print_simple_type_specifier,
      	print_elaborated_type_specifier, print_rest_of_abstract_declarator,
      	print_parameter_declaration_clause, print_exception_specification,
      	print_nested_name_specifier, and definition of cp_printers.
      	(locate_error): New function.
      	(cp_error_at, cp_warning_at, cp_pedwarn_at): Moved here and
      	rewritten in terms of locate_error and diagnostic.c.
      	(cp_tree_printer): Rename cp_printer; wire up to *_to_string
      	instead of deleted print_* routines.  Handle %C, %L, %O, %Q also.
      	(init_error): Adjust to match.
      po:
      	* POTFILES.in: Remove cp/errfn.c.
      
      From-SVN: r45765
      Zack Weinberg committed
  34. 15 Sep, 2001 1 commit
  35. 31 Aug, 2001 1 commit
  36. 21 Jul, 2001 1 commit
    • tm.texi: Remove DEFAULT_VTABLE_THUNKS. · c4372ef4
      gcc:
      	* doc/tm.texi: Remove DEFAULT_VTABLE_THUNKS.
      	* config/freebsd.h: Likewise.
      	* config/linux.h: Likewise.
      	* config/openbsd.h: Likewise.
      	* config/alpha/linux-elf.h: Likewise.
      	* config/arm/linux-elf.h: Likewise.
      	* config/d30v/d30v.h: Likewise.
      	* config/fr30/fr30.h: Likewise.
      	* config/ia64/aix.h: Likewise.
      	* config/ia64/ia64.h: Likewise.
      	* config/mips/linux.h: Likewise.
      	* config/pj/pj.h: Likewise.
      	* config/rs6000/linux.h: Likewise.
      	* config/sparc/linux.h: Likewise.
      	* config/sparc/linux64.h: Likewise.
      cp:
      	Remove flag_vtable_thunk. It is always on for the 3.0 ABI.
      	* cp-tree.h (CPTI_DELTA2_IDENTIFIER): Remove.
      	(CPTI_INDEX_IDENTIFIER): Remove.
      	(CPT_PFN_OR_DELTA2_IDENTIFIER): Remove.
      	(delta2_identifier): Remove.
      	(index_identifier): Remove.
      	(pfn_or_delta2_identifier): Remove.
      	(flag_vtable_thunks): Remove.
      	(VTABLE_DELTA2_NAME): Remove.
      	(VTABLE_INDEX_NAME): Remove.
      	(FNADDR_FROM_VTABLE_ENTRY): Adjust.
      	(vfunc_ptr_type_node): Adjust.
      	(VTABLE_NAME_PREFIX): Adjust.
      	(build_vfn_ref): Lose first parameter.
      	(fixup_all_virtual_upcast_offsets): Remove.
      	* decl.c (initialize_predefined_identifiers): Remove
      	delta2_identifier, index_identifier, pfn_or_delta2_identifier.
      	(init_decl_processing): Remove no-vtable-thunk code.
      	* decl2.c (flag_vtable_thunks): Remove.
      	(mark_vtable_entries): Remove no-vtable-thunk code.
      	* error.c (dump_decl): Remove no-vtable-thunk code.
      	(dump_expr): Adjust ptr to member function code.
      	* init.c (initialize_vtable_ptrs): Remove no-vtable-thunk
      	code.
      	* rtti.c (build_headof): Remove no-vtable-thunk code.
      	(get_tinfo_decl_dynamic): Adjust build_vfn_ref call.
      	* search.c (get_base_distance): Remove expand_upcast_fixups case.
      	(virtual_context) Remove.
      	(expand_upcast_fixups): Remove.
      	(fixup_virtual_upcast_offsets): Remove.
      	(fixup_all_virtual_upcast_offsets): Remove.
      	* typeck.c (get_member_function_from_ptrfunc): Remove
      	no-vtable-thunk code.
      	* call.c (build_over_call): Adjust call to build_vfn_ref.
      	* class.c (build_vfn_ref): Lose first parameter. Remove
      	no-vtable-thunk code.
      	(build_rtti_vtbl_entries): Remove no-vtable-thunk code.
      	(build_vtable_entry): Remove no-vtable-thunk code.
      
      From-SVN: r44227
      Nathan Sidwell committed
  37. 28 Jun, 2001 1 commit
    • diagnostic.c (default_print_error_function): Tweak. · 46f018e1
      	* diagnostic.c (default_print_error_function): Tweak.
      	(report_error_function): Likewise.
      	* toplev.h (default_print_error_function): Move to...
      	* diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
      	* tree.h (print_error_function): Move to...
      	* diagnostic.h: ...here. Add a `diagnostic_context *' parameter.
      
      ch/
      
      	* lang.c: #include diagnostic.h
      	(chill_print_error_function): Add a dummy `diagnostic_context *'.
      	* Makefile.in (lang.o): Depend on diagnostic.h
      
      cp/
      
      	* error.c (lang_print_error_function): Add a `diagnostic_context *'
      	parameter. Tweak.
      
      f/
      
      	* Make-lang.in (f/com.o): Depend on diagnostic.h
      	* com.c: #include diagnostic.h
      	(lang_print_error_function): Take a 'diagnostic_context *'.
      
      java/
      
      	* lang.c: #include diagnostic.h
      	(lang_print_error): Add a `diagnostic_context *' parameter.
      	(java_dummy_print): Likewise.
      	* Make-lang.in (JAVA_LEX_C): Depend on diagnostic.h
      
      From-SVN: r43638
      Gabriel Dos Reis committed
  38. 26 Jun, 2001 1 commit
    • toplev.c (decode_f_option): Adjust setting. · 9596ddd6
      	* toplev.c (decode_f_option): Adjust setting.
      	(toplev_main): Call diagnostic_initialize.  Remove call to
      	reshape_diagnostic_buffer._
      
      	* diagnostic.h (struct output_buffer): Add new field format_decoder.
      	(diagnostic_format_decoder): New macro.
      	(diagnostic_prefixing_rule): Likewise.
      	(diagnostic_line_cutoff): Likewise.
      	(set_message_prefixing_rule): Remove.
      
      	* diagnostic.c (lang_printer): Remove.
      	(diagnostic_message_length_per_line): Likewise.
      	(current_prefixing_rule): Likewise.
      	(initialize_diagnostics): Rename to...
      	(diagnostic_initialize): ...this. Tweak.
      	(default_initialize_buffer): Remove.
      	(reshape_diagnostic_buffer): Likewise.
      	(init_output_buffer): Adjust prefixing rule setting.
      	(output_format): Use format_decoder from the output_buffer.
      
      	* c-lang.c (c_init): Adjust tree formatter setting.
      
      cp/
        	* error.c (init_error): Adjust settings.
      
      From-SVN: r43588
      Gabriel Dos Reis committed