Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

don't allow U+0387 (·) in identifiers #28167

Merged
merged 1 commit into from
Jul 18, 2018

Conversation

stevengj
Copy link
Member

@stevengj stevengj commented Jul 18, 2018

As discussed in #25157 and on discourse, it doesn't make sense to accept U+0387 (·) in identifiers, despite the fact that it is included in UAX#31 for legacy reasons.

Julia NFC-normalizes identifiers (#5434), and U+0387 NFC-normalizes to U+00b7 (middle-dot ·, i.e. \cdotp), but we don't allow U+00b7 in identifiers. It makes no sense to treat them differently (the code for this stems from #6805 by @JeffBezanson). At some point in the future, we may want to normalize both to U+22c5 (\cdot ) (see #25157).

The other special cases that we included from Other_ID_Continue are in category No, which we already allow anyway, which is why I deleted the whole Other_ID_Continue line.

This is a breaking change. I seriously doubt that it breaks any real-world code, but we should try to get it in for 0.7. cc @mlhetland.

@stevengj stevengj added breaking This change will break code parser Language parsing and surface syntax labels Jul 18, 2018
@stevengj stevengj added this to the 0.7 milestone Jul 18, 2018
@ararslan ararslan added the unicode Related to unicode characters and encodings label Jul 18, 2018
@JeffBezanson JeffBezanson merged commit a5ee0cc into JuliaLang:master Jul 18, 2018
@stevengj stevengj deleted the other_id_continue branch July 19, 2018 02:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking This change will break code parser Language parsing and surface syntax unicode Related to unicode characters and encodings
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants