aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/semantics.c20
2 files changed, 4 insertions, 20 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 2c3533d..12cdd80 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2007-09-06 Jan Hubicka <jh@suse.cz>
+
+ * semantics.c (expand_body): Do not mark arguments of clones used.
+
2007-09-06 Paolo Carlini <pcarlini@suse.de>
PR c++/32674
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 46789f7..28fe481 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -3140,26 +3140,6 @@ expand_body (tree fn)
gcc_assert (function_depth == 0);
c_expand_body (fn);
-
- if (DECL_CLONED_FUNCTION_P (fn))
- {
- /* If this is a clone, go through the other clones now and mark
- their parameters used. We have to do that here, as we don't
- know whether any particular clone will be expanded, and
- therefore cannot pick one arbitrarily. */
- tree probe;
-
- for (probe = TREE_CHAIN (DECL_CLONED_FUNCTION (fn));
- probe && DECL_CLONED_FUNCTION_P (probe);
- probe = TREE_CHAIN (probe))
- {
- tree parms;
-
- for (parms = DECL_ARGUMENTS (probe);
- parms; parms = TREE_CHAIN (parms))
- TREE_USED (parms) = 1;
- }
- }
}
/* Generate RTL for FN. */