diff options
author | Jason Merrill <jason@redhat.com> | 2018-11-05 02:47:05 -0500 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2018-11-05 02:47:05 -0500 |
commit | b008f16b7a279da845070dce786ea3afd5925364 (patch) | |
tree | fecb35ba45ea46dcb0a2b02194e8b1b54ed0e467 /libcpp/symtab.c | |
parent | 4be5c72cf3ea3ee98a97ac2e53d21122ad224b10 (diff) | |
download | gcc-b008f16b7a279da845070dce786ea3afd5925364.zip gcc-b008f16b7a279da845070dce786ea3afd5925364.tar.gz gcc-b008f16b7a279da845070dce786ea3afd5925364.tar.bz2 |
Implement UDL changes from P0732R2.
Implementing the UDL changes was pretty straightforward; I simplified
cp_parser_userdef_string_literal using the releasing_vec type from mangle.c.
While looking at this, I realized that the string UDL template taking a
character pack that we implemented for C++14 didn't actually make it into
C++14, so I've added a pedwarn for it and no longer suggest it in the
diagnostic about an invalid UDL template.
* cp-tree.h (struct releasing_vec): Move from mangle.c.
Add get_ref method.
* parser.c (cp_parser_userdef_string_literal): Use it. Handle
passing the string to a single template parameter of class type.
(cp_parser_template_declaration_after_parameters): Allow it.
Pedwarn about the character pack template that was proposed but not
accepted for C++14, and don't suggest it.
From-SVN: r265790
Diffstat (limited to 'libcpp/symtab.c')
0 files changed, 0 insertions, 0 deletions