From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id C21D0383A82B; Wed, 4 Aug 2021 13:39:29 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C21D0383A82B From: "jakub at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/100977] [C++23] Implement C++ Identifier Syntax using Unicode Standard Annex 31 Date: Wed, 04 Aug 2021 13:39:29 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 12.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: jakub at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Aug 2021 13:39:29 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D100977 Jakub Jelinek changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #1 from Jakub Jelinek --- I think it might be better to make makeucnid parse also the https://www.unicode.org/Public/13.0.0/ucd/DerivedCoreProperties.txt file and read the XID_Start and XID_End properties from there. But when I just regenerate ucnid.h using Unicode 13.0.0 txt files, the difference is: --- /usr/src/gcc/libcpp/ucnid.h 2021-08-04 15:04:46.053701822 +0200 +++ ucnid.h 2021-08-04 15:05:36.773996631 +0200 @@ -505,6 +505,7 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x07f0 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x07f1 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x07f2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x07fc }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0815 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x0816 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x0817 }, @@ -529,7 +530,23 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0858 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x0859 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x085a }, -{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x08e3 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x08d2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x08d3 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08d4 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08d5 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08d6 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08d7 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08d8 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08d9 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08da }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08db }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08dc }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08dd }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08de }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08df }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08e0 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x08e2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x08e3 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08e4 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08e5 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x08e6 }, @@ -556,6 +573,7 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08fb }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08fc }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08fd }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x08fe }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0900 }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0903 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0904 }, @@ -615,6 +633,7 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x09e5 }, { C99|N99| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x09ef }, { C99| 0|CXX|C11| 0|CID|NFC|NKC| 0, 0, 0x09f1 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x09fd }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0a01 }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0a02 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0a04 }, @@ -820,6 +839,8 @@ static const struct ucnrange ucnranges[] { C99| 0|CXX|C11| 0|CID|NFC|NKC| 0, 0, 0x0d28 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0d29 }, { C99| 0|CXX|C11| 0|CID|NFC|NKC| 0, 0, 0x0d39 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0d3a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x0d3b }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0d3d }, { C99| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x0d3e }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0d43 }, @@ -894,7 +915,7 @@ static const struct ucnrange ucnranges[] { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0eb7 }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 118, 0x0eb8 }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 118, 0x0eb9 }, -{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0eba }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x0eba }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0ebc }, { C99| 0|CXX|C11| 0|CID|NFC|NKC| 0, 0, 0x0ebd }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x0ebf }, @@ -1031,6 +1052,22 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1a7a }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1a7b }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1a7e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1aaf }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1ab0 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1ab1 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1ab2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1ab3 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1ab4 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1ab5 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1ab6 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1ab7 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1ab8 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1ab9 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1aba }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1abb }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1abc }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1abe }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1abf }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1b05 }, { 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x1b06 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1b07 }, @@ -1094,6 +1131,8 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 1, 0x1ce7 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1cec }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1cf3 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1cf7 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1cf8 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1d2b }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1d2e }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1d2f }, @@ -1144,7 +1183,27 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de3 }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de4 }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de5 }, -{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 0, 0x1dfb }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de6 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de7 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de8 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1de9 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1dea }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1deb }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1dec }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1ded }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1dee }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1def }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1df0 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1df1 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1df2 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1df3 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1df4 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1df5 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 232, 0x1df6 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 228, 0x1df7 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 228, 0x1df8 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 0, 0x1dfa }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1dfb }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 233, 0x1dfc }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0x1dfd }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0x1dfe }, @@ -1527,8 +1586,6 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x324f }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x327e }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x327f }, -{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x32fe }, -{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x32ff }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x33ff }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x4dff }, { C99| 0|CXX|C11| 0|CID|NFC|NKC| 0, 0, 0x9fa5 }, @@ -1543,7 +1600,9 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xa67a }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xa67b }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xa67c }, -{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa69e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa69b }, +{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0xa69d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xa69e }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa6ef }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xa6f0 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa76f }, @@ -1551,6 +1610,7 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa7f7 }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0xa7f9 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa805 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa82b }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa8c3 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xa8df }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xa8e0 }, @@ -1586,6 +1646,10 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0xaabe }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xaac0 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xaaf5 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xab5b }, +{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0xab5f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xab68 }, +{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0xab69 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xabec }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xabff }, { C99| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xd7a3 }, @@ -1650,7 +1714,16 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0xfe23 }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0xfe24 }, { 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0xfe25 }, -{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 0, 0xfe2f }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0xfe26 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe27 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe28 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe29 }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe2a }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe2b }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe2c }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 220, 0xfe2d }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0xfe2e }, +{ 0| 0| 0|C11|N11|CID|NFC|NKC| 0, 230, 0xfe2f }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0xfe44 }, { 0| 0| 0| 0| 0|CID|NFC|NKC| 0, 0, 0xfe46 }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0xfe52 }, @@ -1686,13 +1759,39 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0xfffd }, { 0| 0| 0| 0| 0|CID|NFC|NKC| 0, 0, 0xffff }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x101fc }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x102df }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10375 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10376 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10377 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10378 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10379 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10a0c }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10a0e }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10a37 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10a38 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 1, 0x10a39 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10a3e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10ae4 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10ae5 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10d23 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10d24 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10d25 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10d26 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10eaa }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10eab }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x10f45 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x10f46 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x10f47 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10f48 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10f49 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10f4a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x10f4b }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x10f4c }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x10f4d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x10f4e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x10f4f }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11045 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1107e }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11099 }, { 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x1109a }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1109b }, @@ -1711,9 +1810,88 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x1112f }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11132 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x11133 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11172 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x111bf }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x111c9 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11234 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x11235 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x112e8 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 7, 0x112e9 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1133a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 7, 0x1133b }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1133d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x1133e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1134a }, +{ 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x1134c }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11356 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x11357 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11365 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11366 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11367 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11368 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11369 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1136a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1136b }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1136f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11370 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11371 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11372 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x11373 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11441 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11445 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1145d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x114af }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x114b0 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x114b9 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x114ba }, +{ 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x114bc }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x114bd }, +{ 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x114be }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x114c1 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x114c2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x115ae }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x115af }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x115b9 }, +{ 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x115bb }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x115be }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x115bf }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1163e }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x116b5 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x116b6 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1172a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11838 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x11839 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1192f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC|CTX, 0, 0x11930 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11937 }, +{ 0| 0| 0|C11| 0| 0|NFC|NKC| 0, 0, 0x11938 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1193c }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x1193d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11942 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x119df }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11a33 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11a46 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11a98 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11c3e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11d41 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11d43 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 9, 0x11d44 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x11d96 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x16aef }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 1, 0x16af0 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 1, 0x16af1 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 1, 0x16af2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 1, 0x16af3 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x16b2f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x16b30 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x16b31 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x16b32 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x16b33 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x16b34 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x16b35 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x16fef }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 6, 0x16ff0 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1bc9d }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1d15d }, { 0| 0| 0|C11| 0| 0| 0| 0| 0, 0, 0x1d164 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 216, 0x1d165 }, @@ -1792,6 +1970,69 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1d7cb }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1d7cd }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1d7ff }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1dfff }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e000 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e001 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e002 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e003 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e004 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e005 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e007 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e008 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e009 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e00a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e00b }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e00c }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e00d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e00e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e00f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e010 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e011 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e012 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e013 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e014 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e015 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e016 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e017 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e01a }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e01b }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e01c }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e01d }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e01e }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e01f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e020 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e022 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e023 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e025 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e026 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e027 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e028 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e029 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e12f }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e130 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e131 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e132 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e133 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e134 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e135 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e2eb }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e2ec }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e2ed }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e2ee }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e8cf }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1e8d0 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1e8d1 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1e8d2 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1e8d3 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1e8d4 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 220, 0x1e8d5 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1e943 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e944 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e945 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e946 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e947 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e948 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 230, 0x1e949 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1edff }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1ee03 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1ee04 }, @@ -1865,17 +2106,19 @@ static const struct ucnrange ucnranges[] { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f12f }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f14f }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f169 }, -{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f16b }, +{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f16c }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f18f }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f190 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f1ff }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f202 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f20f }, -{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f23a }, +{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f23b }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f23f }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f248 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1f24f }, { 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1f251 }, +{ 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1fbef }, +{ 0| 0| 0|C11| 0|CID|NFC| 0| 0, 0, 0x1fbf9 }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x1fffd }, { 0| 0| 0| 0| 0|CID|NFC|NKC| 0, 0, 0x1ffff }, { 0| 0| 0|C11| 0|CID|NFC|NKC| 0, 0, 0x2f7ff }, plus various changes in the check_nfc function. So, the first question is if the C11/N11/C99 etc. stuff should use Unicode = 4.1 (or what was used when it was generated) tables and only CXX20/NXX20 should= use Unicode 13.0 tables (what about NFC/NKC?), or if it is ok to just regenerate everything using Unicode 13.0 files, add parsing of the DerivedCoreProperties.txt file too (and pick XID_Start and XID_Continue properties there, throw away everything < 0x80 and otherwise compute CXX20 = flag as XID_Continue and NXX20 flag as XID_Continue \ XID_Start.=