<div dir="ltr">SG16 has an NB comment to deal with! Tom has already scheduled it for Belfast. It&#39;s basically that the list of allowed code points have some interesting control characters like zero width joiners and RTL modifiers. <br><br><a href="https://github.com/cplusplus/nbballot/issues/28">https://github.com/cplusplus/nbballot/issues/28</a><br><br>There&#39;s also an issue that JF raised earlier:<br><a href="https://github.com/sg16-unicode/sg16/issues/48">https://github.com/sg16-unicode/sg16/issues/48</a><br>Improve support for Unicode characters in identifiers  <br><br>Relevant unicode standard:<br><a href="https://unicode.org/reports/tr31/">https://unicode.org/reports/tr31/</a> UNICODE IDENTIFIER AND PATTERN SYNTAX  <br><br>Which is complicated because it allows things like identifiers written in Farsi which requires zwj for disambiguation, and suggests regex to detect particular allowed identifiers. It&#39;s fairly dense, and I haven&#39;t digested it yet, but it looks like there might be allowed ways to exclude that. <br><br>Plus tailoring would be needed because C++ disallows some characters such as &#39;$&#39; which might otherwise be allowed. This is also discussed in TR31. <br><br><br>My feeling on the comment is that it&#39;s not a new issue for C++20, so it&#39;s not clear that it has to be fixed for C++20. I believe it should be fixed, but it ought to be fixed in a principled manner, and that likely means TR31. <br><br>We would also have to discuss if emoji are allowed in identifiers. TR31 does not strictly disallow them. The TonyTable shall be interesting. <br><br><br><br></div>