• mmitchel's avatar
    * invoke.texi: Remove documentation for -fsquangle and · f2b8a47d
    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
pt.c 287 KB