From be194e0e30f86b8f0f5ca578f5274814811a2f0f Mon Sep 17 00:00:00 2001 From: Paolo Carlini Date: Tue, 22 Oct 2013 11:46:59 +0000 Subject: [PATCH] re PR c++/58816 (ICE have tree_list in private_is_attribute_p) 2013-10-22 Paolo Carlini PR c++/58816 * pt.c (apply_late_template_attributes): Use get_attribute_name, not TREE_PURPOSE. From-SVN: r203919 --- gcc/cp/ChangeLog | 6 ++++++ gcc/cp/pt.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 1da821b..50ec68d 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2013-10-22 Paolo Carlini + + PR c++/58816 + * pt.c (apply_late_template_attributes): Use get_attribute_name, + not TREE_PURPOSE. + 2013-10-18 Paolo Carlini PR c++/58466 diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index e04bdcc..cbb0339a 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -8610,7 +8610,7 @@ apply_late_template_attributes (tree *decl_p, tree attributes, int attr_flags, pass it through tsubst. Attributes like mode, format, cleanup and several target specific attributes expect it unmodified. */ - else if (attribute_takes_identifier_p (TREE_PURPOSE (t))) + else if (attribute_takes_identifier_p (get_attribute_name (t))) { tree chain = tsubst_expr (TREE_CHAIN (TREE_VALUE (t)), args, complain, -- 2.7.4