-
mmitchel authored
-fname-mangling-version. Remove old ABI mangling code. * cp-tree.h (cp_tree_index): Remove CPTI_TINFO_DECL_ID and CPTI_TINFO_VAR_ID. (tinfo_decl_id): Remove. (tinfo_var_id): Likewise. (name_mangling_version): Likewise. (flag_do_squangling): Likewise. (get_vtt_name): Likewise. (init_method): Likewise. (build_overload_name): Likewise. (build_static_name): Likewise. (build_decl_overload_real): Likewise. (build_overload_with_type): Likewise. (build_destructor_name): Likewise. (get_id_2): Likewise. (get_ctor_vtbl_name): Likewise. (mangle_typeinfo_fn_for_type): New function. (mangle_java_reflection_var_for_type): Likewise. * call.c (build_new_method_call): Use mangle_vtt_for_type. * class.c (get_vtable_name): Remove. (get_vtt_name): Remove. (get_vtable_decl): Use mangle_vtbl_for_type. (build_vtt): Likewise. (build_ctor_vtbl_group): Remove old ABI mangling support. * decl.c (pushtag): Likewise. (maybe_commonize_var): Use set_mangled_name_for_decl. (grokfndecl): Remove old ABI mangling support. (grokvardecl): Likewise. (grokdeclarator): Likewise. (grok_op_properties): Adjust use of DEF_OPERATOR. * decl2.c (name_mangling_version): Remove. (lang_f_options): Remove squangle. (unsupported_options): Add squangle. (lang_decode_options): Don't set flag_do_squangling. Issue a warning for -fname-mangling-version. (grokclassfn): Remove old ABI mangling support. (finish_static_data_member_decl): Likewise. (grokfield): Likewise. (grokoptypename): Likewise. (get_sentry): Likewise. * init.c (build_java_class_ref): Use mangle_java_reflection_var_for_type. * lex.c (init_operators): Adjust use of DEF_OPERATOR. (init_parse): Call init_mangle, not init_method. * mangle.c (write_special_name_constructor): Handle maybe-in-charge constructors. (write_special_name_destructor): Handle maybe-in-charge destructors. (write_expression): Tweak code to handle non-type template arguments with reference type. (mangle_typeinfo_fn_for_type): New function. (mangle_java_reflection_var_for_type): Likewise. (mangle_conv_op_name_for_type): Don't use a name that the user could type. * method.c (enum mangling_flags): Remove. (mangling_flags): Likewise. (obstack_chunk_alloc): Likewise. (obstack_chunk_free): Likewise. (OB_INIT): Likewise. (OB_PUTC): Likewise. (OB_PUTC2): Likewise. (OB_PUTS): Likewise. (OB_PUTID): Likewise. (OB_PUTCP): Likewise. (OB_FINISH): Likewise. (OB_LAST): Likewise. (btypelist): Likewise. (ktypelist): Likewise. (maxbtype): Likewise. (maxktype): Likewise. (typevec): Likewise. (maxtype): Likewise. (init_method): Likewise. (digit_buffer): Likewise. (nofold): Likewise. (start_squangling): Likewise. (end_squangling): Likewise. (icat): Likewise. (dicat): Likewise. (old_backref_index): Likewise. (flush_repeats): Likewise. (is_back_referenceable_type): Likewise. (issue_nrepeats): Likewise. (check_ktype): Likewise. (issue_ktype): Likewise. (build_overload_nested_name): Likewise. (build_underscore_int): Likewise. (build_overload_scope_ref): Likewise. (mangle_expression): Likewise. (build_overload_int): Likewise. (mangled_C9x_name): Likewise. (build_overload_value): Likewise. (build_template_template_parm_names): Likewise. (build_template_parm_names): Likewise. (build_overload_identifier): Likewise. (build_qualified_name): Likewise. (build_mangled_name_for_type_with_Gcode): Likewise. (build_mangled_name_for_type): Likewise. (build_overload_name): Likewise. (build_mangled_name): Likewise. (process_modifiers): Likewise. (check_btype): Likewise. (process_overload_item): Likewise. (build_static_name): Likewise. (build_decl_overload_real): Likewise. (set_mangled_name_for_decl): Remove old ABI mangling support. (build_typename_overload): Remove. (build_overload_with_type): Remove. (get_id_2): Remove. (get_ctor_vtbl_name): Remove. (build_destructor_name): Likewise. (set_mangled_name_for_decl): Likewise. (make_thunk): Remove old ABI mangling support. * operators.def: Likewise. * pt.c (check_explicit_specialization): Don't call set_mangled_name_for_template_decl. (lookup_template_class): Remove old ABI mangling support. (tsubst_friend_function): Update comment. (tsubst_decl): Remove old ABI mangling support. (tsubst_copy): Likewise. (set_mangled_name_for_template_decl): Remove. * rtti.c (init_rtti_processing): Use std_identifier. Don't set tinfo_decl_id or tinfo_var_id. (get_tinfo_var): Use mangle_typeinfo_for_type. (tinfo_name): Remove old ABI mangling support. (get_tinfo_decl): Likewise. (tinfo_base_init): Likewise. (create_real_tinfo_var): Use a name that the user can't type. * tinfo2.cc (BUILTIN): Adjust to use new mangling. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34458 138bc75d-0d04-0410-961f-82ee72b054a4
f2b8a47d