-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
UTF surrogate pairs broken #3055
Comments
You can reproduce the problem w/ this snippet: void main() { while this code doesn't exhibit the problem: void main() { I think it's an issue in the scanner. Set owner to @scheglov. |
This code works: Added AsDesigned label. |
|
BTW I just checked and I still have the project I created in the editor last week that worked. Here is the exact line that worked last week: test("\uD800\uDC00", "%F0%90%80%80"); |
|
Added NeedsInfo label. |
As the spec stands, the the hex sequence must be a valid Unicode scalar value. Apparently D800 is not such a value. So the code is illegal. If this works in one implementation and not another, then we may have bugs - but fixing them will simply ensure that this code is uniformly rejected. The real question is does it make sense to change the spec (and to what?). I will consult with our local Unicode gurus tomorrow. |
VM was fixed to reject such code. |
Added AsDesigned label. |
New commits in this version: git -C third_party/pkg/pub log --oneline cd7a43f2109f7e5eb22e73c7f4e15d25fd57598e..d95c5713dda518ed53ada70e00789e6aadbfbe48 d95c5713 (HEAD, origin/master, origin/HEAD) Remove duplicate global invocation on Windows (#3055) 4c5198df master->main (#3101) e793fd52 More tool/test.dart tweaks (#3097) 1b228edd Report retracted packages (#3093) 4fedb6c5 Tweak strict dependencies error message for `_validateBenchmarkTestTool` (#3087) e608ab6e Improve test script (#3091) abf702c4 Detect potential leaks in `dart pub publish`. (#3049) 9941c1f9 Fix broken simplification of prerelease constraints (#3078) f0cdfa27 format (#3086) 5a1242c6 Fix unicode terminal detection windows (#2933) 58e2296d Dart format (#3084) 1426601c use incremental compilation in the tool/test.dart script (#3075) 9954f851 Fix a typo (#3062) 44489b31 Use relative import for path.dart (#2959) 77702ab1 Always precompile scripts before running them (#3074) Change-Id: I913ab9e3b5bc7181d483a2de96ec4ad917028b75 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/213262 Reviewed-by: Jonas Jensen <[email protected]> Commit-Queue: Sigurd Meldgaard <[email protected]>
These seemed to be working a few days ago, and still work when using tools/build.py/test.py, but no longer work in the editor. For example,
'\uD800\uDC00'
In the editor I now get:
Multiple markers at this line
- Unexpected token 'ILLEGAL'
- Expected ',' or ')', but got
'ILLEGAL'
This is with editor build 7552.
The text was updated successfully, but these errors were encountered: