[Bug c++/64626] C++14 single quote should not always be a digit separator
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64626 emsr at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #4 from emsr at gcc dot gnu.org --- libcpp/ 2015-03-16 Edward Smith-Rowland <3dw...@verizon.net> PR c++/64626 * lex.c (lex_number): If a number ends with digit-seps (') skip back and let lex_string take them. gcc/testsuite/ 2015-03-16 Edward Smith-Rowland <3dw...@verizon.net> PR c++/64626 g++.dg/cpp1y/pr64626-1.C: New. g++.dg/cpp1y/pr64626-2.C: New. g++.dg/cpp1y/digit-sep-neg.C: Adjust errors and warnings.
[Bug c++/64626] C++14 single quote should not always be a digit separator
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64626 --- Comment #3 from emsr at gcc dot gnu.org --- Author: emsr Date: Tue Mar 17 00:50:55 2015 New Revision: 221470 URL: https://gcc.gnu.org/viewcvs?rev=221470&root=gcc&view=rev Log: libcpp/ 2015-03-16 Edward Smith-Rowland <3dw...@verizon.net> PR c++/64626 * lex.c (lex_number): If a number ends with digit-seps (') skip back and let lex_string take them. gcc/testsuite/ 2015-03-16 Edward Smith-Rowland <3dw...@verizon.net> PR c++/64626 g++.dg/cpp1y/pr64626-1.C: New. g++.dg/cpp1y/pr64626-2.C: New. g++.dg/cpp1y/digit-sep-neg.C: Adjust errors and warnings. Added: trunk/gcc/testsuite/g++.dg/cpp1y/pr64626-1.C trunk/gcc/testsuite/g++.dg/cpp1y/pr64626-2.C Modified: trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/cpp1y/digit-sep-neg.C trunk/libcpp/ChangeLog trunk/libcpp/lex.c
[Bug c++/64626] C++14 single quote should not always be a digit separator
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64626 emsr at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2015-03-05 CC||emsr at gcc dot gnu.org Assignee|unassigned at gcc dot gnu.org |emsr at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #2 from emsr at gcc dot gnu.org --- Created attachment 34971 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34971&action=edit In the lexer check if a number ends in digit separator. If so back up. This is testing... The new test case is the one here in the trail. libcpp/ 2015-03-05 Edward Smith-Rowland <3dw...@verizon.net> PR c++/64626 * expr.c (parse_has_attribute): New function; (eval_token): Look for __has_attribute__ and route to parse_has_attribute. gcc/testsuite/ 2015-03-05 Edward Smith-Rowland <3dw...@verizon.net> PR c++/64626 g++.dg/cpp1y/pr64626.C: New.
[Bug c++/64626] C++14 single quote should not always be a digit separator
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64626 --- Comment #1 from Ben Longbons --- Demostration that gcc correctly preprocesses the other tokens: #define JOIN(a, b) a##b JOIN(.., .) // error about pasting . and . #define JOIN3(a, b, c) a##b##c JOIN3(%:%, :, %:) // successfully results in %: %:%: // (though note that the order of evaluation of ## is unspecified so if b##c were evaluated first a compliant implementation could fail to paste :%:)