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
toUpperCase and toLowerCase should use the full case mapping. #6706
Comments
cc @iposva-google. |
Yes, the full case mapping should be used. Some background: when I wrote the casing code for Dart I was under the mistaken impression that JavaScript used the compatible case mapping. As such, the casing data that I generated does not include the additional information needed for full casing. Fortunately, doing the right thing is a relatively straight-forward change. I think I already have an outstanding issue to fix this. Set owner to @lexprfuncall. |
Removed Area-Language label. |
Removed the owner. |
Removed Priority-Medium label. |
Issue #14857 has been merged into this issue. |
This came up again, in the context of Turkish uppercase dotted i, which in the VM goes to lower case as just i, and in JS goes to i with a combining dot (0x309). |
@ErikCorryGoogle: You implemented these kind of tables probably several times. How hard would it be to change the ones from the VM? |
This issue was originally filed by erik.co...@gmail.com
Currently the VM uses simple case mapping where Straße -> STRAßE, whereas dart2js inherits the full case mapping from JavaScript where Straße -> STRASSE. We should determine which mapping should be used and implement it consistently.
There is a test for this: corelib/unicode_test.dart
The text was updated successfully, but these errors were encountered: