1. 13 Sep, 2002 1 commit
  2. 11 Sep, 2002 1 commit
    • Makefile.in: Remove all references to s-under and underscore.c. · 3fd9d606
      gcc:
      	* Makefile.in: Remove all references to s-under and underscore.c.
      	* collect2.c, tlink.c: Change all uses of prepends_underscore
      	to look directly at USER_LABEL_PREFIX.
      
      gcc/cp:
      	* Make-lang.in: Build cp/cxxfilt.o from $(srcdir)/cp/cxxfilt.c,
      	and c++filt from cxxfilt.o + version.o + $(LIBDEPS).
      	* cxxfilt.c: New file: split from libiberty/cplus-dem.c, with
      	minor adjustments (use version_string, eliminate yet another
      	duplicate of xmalloc)
      
      libiberty:
      	* cplus-dem.c: Code code under #ifdef MAIN moved to gcc/cp/cxxfilt.c.
      	* testsuite/Makefile.in: Adjust for test-demangle.
      	* testsuite/regress-demangle: Deleted.
      	* testsuite/test-demangle.c: New file.
      	* testsuite/demangle-expected: Change \$ to $ throughout, now that
      	this file is not being read by a shell script.
      
      From-SVN: r57037
      Zack Weinberg committed
  3. 09 Sep, 2002 1 commit
  4. 04 Sep, 2002 2 commits
  5. 01 Sep, 2002 1 commit
  6. 31 Aug, 2002 2 commits
  7. 27 Aug, 2002 1 commit
    • c-common.c (warn_abi): New variable. · eca7f13c
      	* c-common.c (warn_abi): New variable.
      	* c-common.h (warn_abi): Likewise.
      	* c-opts.c (COMMAND_LINE_OPTIONS): Add -Wabi.
      	(c_common_decode_option): Handle it.
      	* doc/invoke.texi:P Document -Wabi.
      
      	* class.c (layout_virtual_bases): Warn about bugs in G++ that
      	result in incorrect object layouts.
      	(layout_class_type): Likewise.
      
      	* testsuite/g++.dg/abi/bitfield5.C: New test.
      	* testsuite/g++.dg/abi/vbase10.C: Likewise.
      
      From-SVN: r56618
      Mark Mitchell committed
  8. 25 Aug, 2002 1 commit
    • tree.c (lvalue_p_1): Add argument for whether casts of lvalues are allowable. · 13d3f0b6
      2002-08-24  Matt Austern  <austern@apple.com>
      
              * tree.c (lvalue_p_1): Add argument for whether casts of lvalues
              are allowable.
              (real_lvalue_p): Update caller.
              (lvalue_p): Ditto.
              (non_cast_lvalue_or_else): New.
              * tree.h: Declare it.
              * typeck.c (build_unary_op): Use non_cast_lvalue_or_else.
      
      2002-08-24  Matt Austern  <austern@apple.com>
      
              * g++.dg/ext/lvaddr.C: New test.
              * g++.dg/ext/lvcast.C: New test.
      
      From-SVN: r56560
      Matt Austern committed
  9. 23 Aug, 2002 1 commit
  10. 22 Aug, 2002 1 commit
    • c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR. · d65b1d77
              * c-common.h (RETURN_STMT_EXPR): Rename from RETURN_EXPR.
              * c-common.def: Adjust.
              * c-dump.c (c_dump_tree): Adjust.
              * c-semantics.c (genrtl_return_stmt): Adjust.
              * c-pretty-print.c (pp_c_statement): Adjust.
              * tree-inline.c (copy_body_r): Adjust.
      
      2002-08-22  Jason Merrill  <jason@redhat.com>
      
              * pt.c (tsubst_expr): RETURN_EXPR is now RETURN_STMT_EXPR.
              * semantics.c (nullify_returns_r): Likewise.
      
      From-SVN: r56523
      Jason Merrill committed
  11. 17 Aug, 2002 2 commits
  12. 15 Aug, 2002 3 commits
  13. 13 Aug, 2002 1 commit
  14. 11 Aug, 2002 2 commits
  15. 10 Aug, 2002 2 commits
    • c-opts.c (set_std_cxx98, [...]): New. · f749a36b
      	* c-opts.c (set_std_cxx98, set_std_c89): New.
      	(COMMAND_LINE_OPTIONS): Move more from cppinit.c.
      	(c_common_decode_option): Handle new switches from cppinit.c.
      	Add -std=gnu++98.
      	* cppinit.c (set_lang): Rename cpp_set_lang.  Export.
      	(no_arg, no_num): Remove.
      	(COMMAND_LINE_OPTIONS): Move more to c-opts.c.  Drop all lang-
      	switches apart from -lang-objc and lang-asm.
      	(cpp_handle_option): Similarly.
      	* cpplib.h (cpp_set_lang): New.
      	* doc/cppopts.texi, doc/invoke.texi: Document -std=c++98,
      	-std=gnu++98.
      	* objc/lang-specs.h: Remove -ansi.
      cp:
      	* lang-specs.h: Remove -ansi.
      
      From-SVN: r56185
      Neil Booth committed
    • tree.c (maybe_dummy_object): Replace // with /* */e · 3ebf5204
      cp:
      	* tree.c (maybe_dummy_object): Replace // with /* */e
      testsuite:
      	* gcc.dg/bitfld-4.c: Add blank options.
      
      From-SVN: r56183
      Nathan Sidwell committed
  16. 09 Aug, 2002 3 commits
    • call.c (standard_conversion): Use build_ptrmem_type. · 9e259dd1
      	* call.c (standard_conversion): Use build_ptrmem_type.
      	* cp-tree.h (build_ptrmem_type): New function.
      	(adjust_result_of_qualified_name_lookup): Likewise.
      	* decl.c (grokvardecl): Do not look for OFFSET_TYPEs to indicate
      	static data members.
      	(build_ptrmem_type): New function.
      	(grokdeclarator): Do not use build_offset_type when encountering a
      	qualified name.
      	* parse.y (parse_finish_call_expr): Use
      	adjust_result_of_qualified_name_lookup.
      	* search.c (adjust_result_of_qualified_name_lookup): New function.
      	* typeck.c (qualify_type_recursive): Use TYPE_PTRMEM_* rather than
      	accessing OFFSET_TYPEs directly.
      
      	* g++.dg/template/crash1.C: New test.
      
      From-SVN: r56169
      Mark Mitchell committed
    • cleanup whitespacing a tad. · b6ce26ac
      From-SVN: r56145
      Mike Stump committed
    • 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
  17. 08 Aug, 2002 5 commits
    • typeck.c (build_class_member_access_expr): Do not return error_mark_node when no… · a6f5b2d3
      typeck.c (build_class_member_access_expr): Do not return error_mark_node when no error has occurred.
      
      	* typeck.c (build_class_member_access_expr): Do not return
      	error_mark_node when no error has occurred.
      
      From-SVN: r56138
      Mark Mitchell committed
    • typeck.c (build_component_addr): Remove. · c93a26f5
      cp:
      	* typeck.c (build_component_addr): Remove.
      	(build_unary_op): Just check it's not a bitfield, and then build
      	an ADDR_EXPR.
      testsuite:
      	* g++.dg/other/packed1.C: New test.
      
      From-SVN: r56132
      Nathan Sidwell committed
    • class.c (convert_to_base): Correct check for error_mark_node. · 5bfc90de
      	* class.c (convert_to_base): Correct check for error_mark_node.
      	(create_vtable_ptr): Remove unused VFUNS_P parm
      
      From-SVN: r56127
      Nathan Sidwell committed
    • configure.in (enable_coverage): New enable switch. · 22aa533e
      	* configure.in (enable_coverage): New enable switch.
      	* configure: Rebuilt.
      	* Makefile.in (COVERAGE_FLAGS, coverageexts): New variables.
      	(INTERNAL_CFLAGS): Append COVERAGE_FLAGS.
      	(ALL_FLAGS): Reorder so INTERNAL_CFLAGS comes after CFLAGS.
      	(mostlyclean): Remove coverage files.
      	* doc/install.texi: Document enable_coverage.
      
      	* cp/Make-lang.in (c++.mostlyclean): Remove coverage files.
      	* ada/Make-lang.in (ada.mostlyclean): Remove coverage files.
      	* f/Make-lang.in (f.mostlyclean): Remove coverage files.
      	* java/Make-lang.in (java.mostlyclean): Remove coverage files.
      	* objc/Make-lang.in (objc.mostlyclean): Remove coverage files.
      	* treelang/Make-lang.in (treelang.mostlyclean): Remove coverage
      	files.
      
      From-SVN: r56126
      Nathan Sidwell committed
    • 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
  18. 07 Aug, 2002 2 commits
    • Makefile.in (c-opts.o, [...]): Update. · 0b6f2917
      	* Makefile.in (c-opts.o, c-common.o, C_AND_OBJC_OBJS): Update.
      	* c-common.c: Don't include tree-inline.h.
      	(c_common_init_options, c_common_post_options): Move to c-opts.c.
      	* c-common.h (c_common_decode_option): New.
      	* c-decl.c (c_decode_option): Remove.
      	* c-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
      	* c-opts.c: New file.
      	* c-tree.h (c_decode_option): Remove.
      	* doc/passes.texi: Update.
      	* objc/objc-act.c (objc_decode_option): Remove.
      	* objc/objc-act.h (objc_decode_option): Remove.
      	* objc/ojbc-lang.c (LANG_HOOKS_DECODE_OPTION): Use
      	c_common_decode_option.
      cp:
      	* Make-lang.in (CXX_C_OBJS): Update.
      	* cp-lang.c (LANG_HOOKS_DECODE_OPTION): Use c_common_decode_option.
      	* cp-tree.h (cxx_decode_option): Remove.
      	* decl2.c (compare_options, lang_f_options, unsupported_options,
      	cxx_decode_option): Remove.
      testsuite:
      	* objc.dg/const-str-2.m: Update.
      	* gcc.dg/cpp/c++98.c: Change to C extension.
      	* gcc.dg/cpp/c++98-pedantic.c: Similarly.
      	* gcc.dg/cpp/cpp.exp: Process .C extensions too.
      
      From-SVN: r56105
      Neil Booth committed
    • typeck.c (build_x_unary_op): Handle pointer-to-member. · 1e14c7f0
      cp/
      	* typeck.c (build_x_unary_op): Handle pointer-to-member.
      
      testsuite/
      	* g++.dg/README (Subdirectories): Document new subdir expr.
      	* g++.dg/expr/pmf-1.C: New test.
      
      From-SVN: r56082
      Gabriel Dos Reis committed
  19. 05 Aug, 2002 2 commits
    • 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
    • Fix PR/2213 · 201fbb7f
      cp/
              Fix PR/2213
              * cvt.c (cp_convert_to_pointer): Reject conversions from integral
              expressions to pointer-to-data-member of pointer-to-member-functions.
      
      testsuite/
              * g++.dg/other/conversion1.C: New test.
      
      From-SVN: r56039
      Gabriel Dos Reis committed
  20. 04 Aug, 2002 3 commits
    • Index: ChangeLog · 6d9f628e
      2002-08-04  Geoffrey Keating  <geoffk@redhat.com>
      
      	* Makefile.in (sdbout.o): Doesn't need $(OBSTACK_H).
      	* collect2.h (permanent_obstack): Delete declaration.
      	* collect2.c (permanent_obstack): Delete definition.
      	(main): Don't initialise permanent_obstack.  Use xstrdup instead.
      	* expr.c: Don't include obstack.h.
      	(permanent_obstack): Delete declaration.
      	* function.c: Don't include obstack.h.
      	(permanent_obstack): Delete declaration.
      	* integrate.c: Don't include obstack.h.
      	(function_maybepermanent_obstack): Delete declaration.
      	* print-tree.c (debug_tree): Use x*alloc not permalloc.
      	* sdbout.c (gen_fake_label): Use x*alloc not permalloc.
      	* tlink.c (pfgets): Use xstrdup not permanent_obstack.
      	* toplev.c (lang_independent_init): Rename init_obstacks to init_ttree.
      	* tree.h: Rename init_obstacks to init_ttree.  Remove declarations
      	of permalloc, expralloc, perm_calloc.
      	* tree.c (permanent_obstack): Delete definition.
      	(init_ttree): Rename from init_obstacks.
      	(permalloc): Delete.
      	(perm_calloc): Delete.
      	(dump_tree_statistics): Don't print information about
      	permanent_obstack.
      	* varasm.c (assemble_start_function): Use xstrdup instead of
      	permalloc/strcpy.
      	(assemble_variable): Likewise.
      	* config/alpha/alpha.c (unicosmk_need_dex): Use xmalloc instead of
      	permalloc.
      	(unicosmk_add_extern): Likewise.
      	* config/c4x/c4x.c (c4x_external_ref): Likewise.
      	(c4x_global_label): Likewise.
      	* config/frv/frv.c (frv_encode_section_info): Likewise.
      	* config/i386/winnt.c (i386_pe_record_external_function): Likewise.
      	(i386_pe_record_exported_symbol): Likewise.
      	* config/mips/mips.c (mips_output_external): Likewise.
      	(mips_output_external_libcall): Likewise.
      	* config/pa/pa.c: (permanent_obstack): Delete declaration.
      	(output_call): Use ggc_strdup instead of allocating on
      	permanent_obstack.
      	* config/romp/romp.c: Include ggc.h.
      	(get_symref): Don't declare permanent_obstack, use ggc_strdup
      	intead of permanent_obstack.
      	* config/rs6000/aix31.h (ASM_OUTPUT_EXTERNAL): Use concat
      	instead of permalloc.
      	* config/rs6000/rs6000.c (rs6000_gen_section_name): Use xmalloc
      	instead of permalloc
      	* config/rs6000/xcoff.h (ASM_OUTPUT_EXTERNAL): Use concat
      	instead of permalloc.
      	* config/vax/vax.c (vms_check_external): Use xmalloc instead of
      	permalloc.
      
      Index: cp/ChangeLog
      2002-08-04  Geoffrey Keating  <geoffk@redhat.com>
      
      	* cvt.c (ocp_convert): Delete obsolete code.
      	* parse.y (permanent_obstack): Delete declaration.
      	* pt.c (permanent_obstack): Delete declaration.
      	* repo.c (permanent_obstack): Delete declaration.
      	(open_repo_file): Use xmalloc instead of permanent_obstack.
      	(init_repo): Use xstrdup instead of permanent_obstack.
      
      Index: java/ChangeLog
      2002-08-04  Geoffrey Keating  <geoffk@redhat.com>
      
      	* class.c: (permanent_obstack): Delete declaration.
      	* constants.c: (permanent_obstack): Delete declaration.
      	* except.c: (permanent_obstack): Delete declaration.
      	* expr.c: (permanent_obstack): Delete declaration.
      	* jcf-parse.c: (permanent_obstack): Delete declaration.
      	(saveable_obstack): Delete declaration.
      	* parse.h: (permanent_obstack): Delete declaration.
      	* typeck.c: (permanent_obstack): Delete declaration.
      
      From-SVN: r56035
      Geoffrey Keating committed
    • cp-tree.h (VF_DERIVED_VALUE): Remove. · dd98e14f
      	* cp-tree.h (VF_DERIVED_VALUE): Remove.
      	* class.c (finish_struct_1): Use VF_BINFO_VALUE not VF_DERIVED_VALUE.
      
      From-SVN: r56023
      Nathan Sidwell committed
    • re PR c++/7470 (Vtable: virtual function pointers not in declaration order) · e6858a84
      	PR 7470.
      	C++ ABI change - vfunc ordering.
      	* class.c (add_virtual_function): Remove.
      	(dfs_modify_all_vtables): Take list of all declared
      	virtuals. Assign all that are not in primary base.
      	(check_for_override): Adjust comments.
      	(create_vtable_ptr): Take single list of virtuals. Build chain
      	of declared virtuals here.
      	(layout_class_type): Take single list of virtuals. Adjust.
      	(finish_struct_1): Keep virtuals on single list. Adjust.
      
      From-SVN: r56021
      Nathan Sidwell committed
  21. 02 Aug, 2002 3 commits