On Sun, Dec 23, 2012 at 11:04 PM, Jason Merrill <ja...@redhat.com> wrote: > On 12/21/2012 07:35 AM, Dodji Seketeli wrote: >> >> else if (TREE_TYPE (t) >> && INTEGRAL_OR_ENUMERATION_TYPE_P (TREE_TYPE (t)) >> - && !TREE_CONSTANT (t)) >> + && !TREE_CONSTANT (t) >> + /* Class template and alias template arguments should be OK. >> */ >> + && !DECL_TYPE_TEMPLATE_P (t)) > > > Instead, let's add a previous else if to catch template template arguments > (and do nothing) so that when we hit this else if, we know we're dealing > with a non-type argument.
Thanks; that would make the logic clearer. I would suggest that we abstract this series of conjunction into a separate (static inline) function, e.g. nontype_argument_p. -- Gaby