Bug 58147 - Template template parameter name found after nested-name-specifier
Summary: Template template parameter name found after nested-name-specifier
Status: RESOLVED INVALID
Alias: None
Product: gcc
Classification: Unclassified
Component: c++ (show other bugs)
Version: 4.9.0
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-08-13 07:03 UTC by David Krauss
Modified: 2013-08-13 07:11 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Krauss 2013-08-13 07:03:01 UTC
Although the usage is a bit dubious, name lookup of the identifier after a nested-name-specifier should not find a template parameter name. But it does, seemingly only for a template template parameter.

template< typename > struct b {};
template< template< typename > class b > struct d
    : b< int >
    { using d::b< int >::b; };
template struct d< b >;
Comment 1 David Krauss 2013-08-13 07:11:42 UTC
Never mind; I was missing a template keyword after the nested-name-specifier.

NEEDS MOAR TEMPLATE!