diff options
author | Jason Merrill <jason@redhat.com> | 2016-03-15 15:21:44 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2016-03-15 15:21:44 -0400 |
commit | 3f91db69ca9ed5f541642146b71b2ec76043594f (patch) | |
tree | 342fc04079247cdad5e0f9e0c95f2354a3e6dc43 /gcc/cp | |
parent | 82b1c550eea601027ae7f8f80ba0bc198242d69e (diff) | |
download | gcc-3f91db69ca9ed5f541642146b71b2ec76043594f.zip gcc-3f91db69ca9ed5f541642146b71b2ec76043594f.tar.gz gcc-3f91db69ca9ed5f541642146b71b2ec76043594f.tar.bz2 |
re PR c++/70141 (template parameter not deducible in partial specialization of template inside template)
PR c++/70141
* pt.c (for_each_template_parm_r): Always walk into TYPENAME_TYPE.
From-SVN: r234228
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/pt.c | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 949d25d..9ace01e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2016-03-15 Jason Merrill <jason@redhat.com> + + PR c++/70141 + * pt.c (for_each_template_parm_r): Always walk into TYPENAME_TYPE. + 2016-03-14 Casey Carter <casey@carter.net> Jason Merrill <jason@redhat.com> diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c index 9766668..724d6e9 100644 --- a/gcc/cp/pt.c +++ b/gcc/cp/pt.c @@ -8851,8 +8851,9 @@ for_each_template_parm_r (tree *tp, int *walk_subtrees, void *d) break; case TYPENAME_TYPE: - if (!fn) - WALK_SUBTREE (TYPENAME_TYPE_FULLNAME (t)); + /* A template-id in a TYPENAME_TYPE might be a deduced context after + partial instantiation. */ + WALK_SUBTREE (TYPENAME_TYPE_FULLNAME (t)); break; case CONSTRUCTOR: |