aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cp/pt.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e80433a..78f6a6e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2009-10-01 Martin Jambor <mjambor@suse.cz>
+
+ PR c++/41503
+ * cp/pt.c (function_parameter_expanded_from_pack_p): Return false if
+ DECL_ARTIFICIAL (param_decl) is true.
+
2009-09-30 Gabriel Dos Reis <gdr@cs.tamu.edu>
* tree.h (tree_decl_common::lang_flag_8): New.
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index d078642..5f9b07c 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -2669,7 +2669,8 @@ get_function_template_decl (const_tree primary_func_tmpl_inst)
bool
function_parameter_expanded_from_pack_p (tree param_decl, tree pack)
{
- if (! function_parameter_pack_p (pack))
+ if (DECL_ARTIFICIAL (param_decl)
+ || !function_parameter_pack_p (pack))
return false;
gcc_assert (DECL_NAME (param_decl) && DECL_NAME (pack));