aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/semantics.c20
2 files changed, 5 insertions, 20 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 2d261e7..be44b69 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2007-09-05 Jan Hubicka <jh@suse.cz>
+
+ * cp/sematics.c (expand_body): Remove unnecesary import_export_decl
+ call, DECL_EXTERNAL checks and current_function_decl saving.
+
2007-09-05 Paolo Carlini <pcarlini@suse.de>
PR c++/29731 (again)
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 9faa413..054a83e 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -3131,24 +3131,6 @@ emit_associated_thunks (tree fn)
void
expand_body (tree fn)
{
- tree saved_function;
-
- /* Compute the appropriate object-file linkage for inline
- functions. */
- if (DECL_DECLARED_INLINE_P (fn))
- import_export_decl (fn);
-
- /* If FN is external, then there's no point in generating RTL for
- it. This situation can arise with an inline function under
- `-fexternal-templates'; we instantiate the function, even though
- we're not planning on emitting it, in case we get a chance to
- inline it. */
- if (DECL_EXTERNAL (fn))
- return;
-
- /* ??? When is this needed? */
- saved_function = current_function_decl;
-
/* Emit any thunks that should be emitted at the same time as FN. */
emit_associated_thunks (fn);
@@ -3159,8 +3141,6 @@ expand_body (tree fn)
c_expand_body (fn);
- current_function_decl = saved_function;
-
if (DECL_CLONED_FUNCTION_P (fn))
{
/* If this is a clone, go through the other clones now and mark