OK.
Jason
ssed bootstrap and testing on
x86_64-unknown-linux-gnu against trunk.
From: Dodji Seketeli
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): R
inux-gnu against trunk.
From: Dodji Seketeli
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
Jason Merrill 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
Date: Sat, 26 Nov 2011 11:50:43 +0100
Subject: [PATCH] PR c++/51289 - ICE with alias template for bou
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:
template
struct S {};
template
using A = S;//#1<-- I think we should error here.
We certainly should; we do need to walk the pattern
Jason Merrill 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 part of
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 typ
Jason Merrill 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 (TY
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
Hello,
Consider this example:
template class b>
struct foo {
template
using type = b;
template
b funca() {}
template
type funcb() {}//#1
};
In #1, when lookup_template_class_1 builds the type of type we hit
a kind of plumbing issue; near the en
10 matches
Mail list logo