Re: [PATCH] Fix PR c++/60065.

2014-02-23 Thread Adam Butcher
On 2014-02-21 15:49, Jason Merrill wrote: On 02/21/2014 03:19 AM, Adam Butcher wrote: Jason Merrill wrote: Why doesn't num_template_parameter_lists work as a predicate here? It works in the lambda case as it is updated there, but for generic functions I think the following prevents it: cp

Re: [PATCH] Fix PR c++/60065.

2014-02-21 Thread Jason Merrill
On 02/21/2014 03:19 AM, Adam Butcher wrote: A class template with an out-of-line generic function definition will give the same issue I think: template void A::f(auto x) {} // should inject a new list Right. template_class_depth should be useful here. This is basically the same ques

Re: [PATCH] Fix PR c++/60065.

2014-02-21 Thread Adam Butcher
On 2014-02-20 16:18, Jason Merrill wrote: On 02/19/2014 10:00 PM, Adam Butcher wrote: + if (current_template_parms) +{ + cp_binding_level *maybe_tmpl_scope = current_binding_level->level_chain; + while (maybe_tmpl_scope && maybe_tmpl_scope->kind == sk_class) + maybe_tmpl_

Re: [PATCH] Fix PR c++/60065.

2014-02-20 Thread Jason Merrill
On 02/19/2014 10:00 PM, Adam Butcher wrote: + if (current_template_parms) +{ + cp_binding_level *maybe_tmpl_scope = current_binding_level->level_chain; + while (maybe_tmpl_scope && maybe_tmpl_scope->kind == sk_class) + maybe_tmpl_scope = maybe_tmpl_scope->level_chain; +