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/integrate.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/integrate.c')
-rw-r--r-- | gcc/integrate.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/integrate.c b/gcc/integrate.c index bcb3619..270a9c5 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -139,6 +139,9 @@ function_cannot_inline_p (fndecl) register tree parms; rtx result; + if (DECL_UNINLINABLE (fndecl)) + return N_("function cannot be inline"); + /* No inlines with varargs. */ if ((last && TREE_VALUE (last) != void_type_node) || current_function_varargs) |