cp/
commit86f64bd9b87fd6ed7a0b653aac80cb1ba2c338a0
authoremsr <emsr@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 25 Jul 2014 22:35:24 +0000 (25 22:35 +0000)
committeremsr <emsr@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 25 Jul 2014 22:35:24 +0000 (25 22:35 +0000)
treeefcf15526658a36e2836301e944f391c42dd576a
parent91798e71a92bc56c0710396162f5c92cf3cd65da
cp/

2014-07-25  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement N4051 - Allow typename in a template template parameter
* parser.c (cp_parser_type_parameter_key): New funtion;
(cp_parser_token_is_type_parameter_key): Ditto;
(cp_parser_type_parameter): Look for type-parameter-key for all versions
but pedwarn for less than cxx1z.

testsuite/

2014-07-25  Edward Smith-Rowland  <3dw4rd@verizon.net>

Implement N4051 - Allow typename in a template template parameter
* lib/target-supports.exp (check_effective_target_c++1y): Now
means C++1y and up.
(check_effective_target_c++1y_down): New.
(check_effective_target_c++1z_only): New.
(check_effective_target_c++1z): New.
* g++.dg/cpp1z/typename-tmpl-tmpl-parm.C: New.
* g++.dg/cpp1z/typename-tmpl-tmpl-parm-neg.C: New.
* g++.dg/cpp1z/typename-tmpl-tmpl-parm-.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@213065 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/parser.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp1z/typename-tmpl-tmpl-parm-neg.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp1z/typename-tmpl-tmpl-parm-ped-neg.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp1z/typename-tmpl-tmpl-parm.C [new file with mode: 0644]
gcc/testsuite/lib/target-supports.exp