[Dodji Seketeli] Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-12-07 Thread Dodji Seketeli
bootstrap and testing on x86_64-unknown-linux-gnu against trunk. From: Dodji Seketeli do...@redhat.com Date: Sat, 26 Nov 2011 11:50:43 +0100 Subject: [PATCH] PR c++/51289 - ICE with alias template for bound template template parm gcc/cp/ PR c++/51289 * cp-tree.h (TYPE_TEMPLATE_INFO

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-12-02 Thread Dodji Seketeli
against trunk. From: Dodji Seketeli do...@redhat.com Date: Sat, 26 Nov 2011 11:50:43 +0100 Subject: [PATCH] PR c++/51289 - ICE with alias template for bound template template parm gcc/cp/ PR c++/51289 * cp-tree.h (TYPE_TEMPLATE_INFO): Rewrite this accessor macro to better

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-30 Thread Dodji Seketeli
Jason Merrill ja...@redhat.com writes: On 11/29/2011 10:41 AM, Dodji Seketeli wrote: + cp_walk_tree (DECL_ORIGINAL_TYPE (TYPE_NAME (t)), +find_parameter_packs_r, +ppd, ppd-visited); I still don't think we want to walk the underlying type, since it isn't

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-30 Thread Jason Merrill
On 11/30/2011 06:32 AM, Dodji Seketeli wrote: Here is an example of what I had in mind for keeping the walking of the underlying type there: templateclass ... T struct S {}; templateclass ... T using A = ST;//#1-- I think we should error here. We certainly should; we do

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-30 Thread Dodji Seketeli
Jason Merrill ja...@redhat.com writes: I guess let's check DECL_ORIGINAL_TYPE instead of TREE_TYPE for alias templates. Like the below that I am currently bootstrapping? From: Dodji Seketeli do...@redhat.com Date: Sat, 26 Nov 2011 11:50:43 +0100 Subject: [PATCH] PR c++/51289 - ICE with alias

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-29 Thread Dodji Seketeli
Jason Merrill ja...@redhat.com writes: On 11/28/2011 11:54 AM, Dodji Seketeli wrote: @@ -3028,10 +3028,12 @@ find_parameter_packs_r (tree*tp, int *walk_subtrees, void* data) case BOUND_TEMPLATE_TEMPLATE_PARM: /* Check the template itself. */ - cp_walk_tree (TREE_TYPE

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-29 Thread Jason Merrill
On 11/29/2011 10:41 AM, Dodji Seketeli wrote: + cp_walk_tree (DECL_ORIGINAL_TYPE (TYPE_NAME (t)), + find_parameter_packs_r, + ppd, ppd-visited); I still don't think we want to walk the underlying type, since it isn't part of the syntactic form of the type

[PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-28 Thread Dodji Seketeli
Hello, Consider this example: templatetypename a, template typename, typename class b struct foo { template typename t using type = ba, t; template typename t ba, t funca() {} template typename t typet funcb() {}//#1 }; In #1, when

Re: [PATCH] PR c++/51289 - ICE with alias template for bound template

2011-11-28 Thread Jason Merrill
On 11/28/2011 11:54 AM, Dodji Seketeli wrote: @@ -3028,10 +3028,12 @@ find_parameter_packs_r (tree*tp, int *walk_subtrees, void* data) case BOUND_TEMPLATE_TEMPLATE_PARM: /* Check the template itself. */ - cp_walk_tree (TREE_TYPE (TYPE_TI_TEMPLATE (t)), + cp_walk_tree