Re: [C++] DR1473 - let literal operators be defined with empty user-defined string literal

2013-06-29 Thread Ed Smith-Rowland
On 06/26/2013 05:01 PM, Jason Merrill wrote: On 06/26/2013 09:43 AM, Ed Smith-Rowland wrote: + if (bad_encoding_prefix) +error (invalid encoding prefix in literal operator); + { +tree string_tree = USERDEF_LITERAL_VALUE (token-u.value); No need to open a nested block for a

Re: [C++] DR1473 - let literal operators be defined with empty user-defined string literal

2013-06-26 Thread Ed Smith-Rowland
On 06/25/2013 08:50 AM, Jason Merrill wrote: I had missed a few files in my patch anyway (I was doing too much at once). On 06/25/2013 08:27 AM, Ed Smith-Rowland wrote: + else if (token-type == CPP_KEYWORD) +{ + error (unexpected keyword; + Remove space between quotes

Re: [C++] DR1473 - let literal operators be defined with empty user-defined string literal

2013-06-26 Thread Jason Merrill
On 06/26/2013 09:43 AM, Ed Smith-Rowland wrote: + if (bad_encoding_prefix) + error (invalid encoding prefix in literal operator); + { + tree string_tree = USERDEF_LITERAL_VALUE (token-u.value); No need to open a nested block for a declaration now that we're compiling as

[C++] DR1473 - let literal operators be defined with empty user-defined string literal

2013-06-25 Thread Ed Smith-Rowland
This will allow such things as constexpr std::complexfloat operatorif(long double imag); OK after testing completes on x86_64-linux. Ed gcc/cp: 2013-06-25 Ed Smith-Rowland 3dw...@verizon.net * gcc/cp/parser.c (cp_parser_operator()): Parse user-defined string literal as

Re: [C++] DR1473 - let literal operators be defined with empty user-defined string literal

2013-06-25 Thread Jason Merrill
On 06/25/2013 08:27 AM, Ed Smith-Rowland wrote: + else if (token-type == CPP_KEYWORD) + { + error (unexpected keyword; + Remove space between quotes and suffix identifier); + return error_mark_node; + } Lower-case 'r' after a semicolon. After