diff options
author | Jason Merrill <jason@redhat.com> | 2001-02-21 09:42:27 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2001-02-21 09:42:27 -0500 |
commit | 5daf7c0a17267dbbff0fea793a3c60f9bbd37e45 (patch) | |
tree | 1ac1f438d70d628d0614049b355e3d6dba77540d /gcc/dwarfout.c | |
parent | 3c88f36654247adb45eb17318a380c47427f1968 (diff) | |
download | gcc-5daf7c0a17267dbbff0fea793a3c60f9bbd37e45.zip gcc-5daf7c0a17267dbbff0fea793a3c60f9bbd37e45.tar.gz gcc-5daf7c0a17267dbbff0fea793a3c60f9bbd37e45.tar.bz2 |
tree.h (DECL_UNINLINABLE): Move from C++ frontend.
* tree.h (DECL_UNINLINABLE): Move from C++ frontend.
(struct tree_decl): Add uninlinable bitfield.
* c-decl.c (duplicate_decls): Set it.
* integrate.c (function_cannot_inline_p): Check it.
* cp-tree.h (struct lang_decl_flags): Remove uninlinable flag.
(DECL_UNINLINABLE): Move to middle-end.
* dwarf2out.c (add_name_and_src_coords_attributes): Don't add
DW_AT_MIPS_linkage_name to abstract methods.
(dwarf2out_abstract_function): Emit class context before calling
set_decl_abstract_flags. Don't clear DECL_ABSTRACT.
(gen_subprogram_die): Remove obsolete code.
(gen_member_die): Don't include clones in the member list.
(gen_decl_die): Emit abstract info for clone origin.
* dwarfout.c (output_type): Don't include clones in the member list.
* dbxout.c (dbxout_type_methods): Ignore abstract methods.
* toplev.c (note_deferral_of_defined_inline_function): Don't clear
DECL_ABSTRACT on a function that already has it set.
* class.c (clone_function_decl): Set DECL_ABSTRACT on original fn.
* decl.c (duplicate_decls): Preserve DECL_ABSTRACT.
* class.c (build_clone): Set DECL_ABSTRACT_ORIGIN for the clone.
* optimize.c (maybe_clone_body): Set DECL_ABSTRACT_ORIGIN for the
parms and outer BLOCK. note_deferral_of_defined_inline_function.
* dwarf2out.c (gen_formal_types_die): Also accept a FUNCTION_DECL.
(get_subprogram_die): Pass it in.
* method.c (implicitly_declare_fn): Don't set DECL_ARTIFICIAL on
second parm of op=.
From-SVN: r39945
Diffstat (limited to 'gcc/dwarfout.c')
-rw-r--r-- | gcc/dwarfout.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/dwarfout.c b/gcc/dwarfout.c index 9c7cb47..370d14f 100644 --- a/gcc/dwarfout.c +++ b/gcc/dwarfout.c @@ -4444,7 +4444,13 @@ output_type (type, containing_scope) for (func_member = TYPE_METHODS (type); func_member; func_member = TREE_CHAIN (func_member)) - output_decl (func_member, type); + { + /* Don't include clones in the member list. */ + if (DECL_ABSTRACT_ORIGIN (func_member)) + continue; + + output_decl (func_member, type); + } } --in_class; |