summaryrefslogtreecommitdiff
path: root/gcc/tree-inline.c
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2001-12-05 18:48:19 -0500
committerJason Merrill <jason@gcc.gnu.org>2001-12-05 18:48:19 -0500
commit742a37d5296ef3645d81b6cf5c1c4e567293a233 (patch)
treed7dc3135dd465d3142b9f9b46de3296e9776e05b /gcc/tree-inline.c
parente4aae2617ab9bd32142b04b17611189353fe280b (diff)
downloadgcc-742a37d5296ef3645d81b6cf5c1c4e567293a233.tar.gz
langhooks.h (struct lang_hooks_for_tree_inlining): Add start_inlining, end_inlining.
* langhooks.h (struct lang_hooks_for_tree_inlining): Add start_inlining, end_inlining. * tree-inline.c (expand_call_inline): Call them. * langhooks-def.h (LANG_HOOKS_TREE_INLINING_START_INLINING): Define. (LANG_HOOKS_TREE_INLINING_END_INLINING): Define. (LANG_HOOKS_TREE_INLINING_INITIALIZER): Add them. * langhooks.c (lhd_tree_inlining_start_inlining): New fn. (lhd_tree_inlining_end_inlining): New fn. * cp-lang.c (LANG_HOOKS_TREE_INLINING_START_INLINING): Define. (LANG_HOOKS_TREE_INLINING_END_INLINING): Define. * tree.c (cp_start_inlining, cp_end_inlining): New fns. * pt.c (push_tinst_level): No longer static. * cp-tree.h: Declare them. * init.c (resolve_offset_ref): Don't check access for the base conversion to access a FIELD_DECL. * cp-tree.h (TYPE_REFFN_P): New macro. * decl.c (bad_specifiers): Check it, too. * rtti.c (create_pseudo_type_info): Set CLASSTYPE_INTERFACE_ONLY on the __*_type_info type if we haven't seen a definition. From-SVN: r47703
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r--gcc/tree-inline.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c
index f82c8c90ae5..1444edf10ea 100644
--- a/gcc/tree-inline.c
+++ b/gcc/tree-inline.c
@@ -812,6 +812,9 @@ expand_call_inline (tp, walk_subtrees, data)
if (!inlinable_function_p (fn, id))
return NULL_TREE;
+ if (! (*lang_hooks.tree_inlining.start_inlining) (fn))
+ return NULL_TREE;
+
/* Set the current filename and line number to the function we are
inlining so that when we create new _STMT nodes here they get
line numbers corresponding to the function we are calling. We
@@ -951,6 +954,8 @@ expand_call_inline (tp, walk_subtrees, data)
/* Don't walk into subtrees. We've already handled them above. */
*walk_subtrees = 0;
+ (*lang_hooks.tree_inlining.end_inlining) (fn);
+
/* Keep iterating. */
return NULL_TREE;
}