7,320 karma · joined August 5, 2017
Note though that my sample size for older people is very small due to the lack of 50's+ in my immediate vicinity (one person in their 60's and one person in their 70's).
In practice, only malware will create such broken names. High level software (e.g. Microsoft's own VSCode) will not handle broken UTF-16. And indeed the in-built UTF-8 code page will lossily decode UTF-16 (unpaired surrogates are replaced with the Unicode replacement character).
IIRC llvm itself generates calls to __CxxFrameHandler3 when SEH is being used, making it awkward to replace with something that's not compatible.
To be clear, this is feasible but it'll require someone knowledgable to put in the work of rewriting this in Rust.
A non-ordinal string comparison may take into account other things such as iterating by actual characters and comparing them in language and culture-aware ways. This is useful for ordering things by name when showing a list to users.
If the standard library dropped this requirement and only supported valid Unicode then it could simply use normal UTF-8 instead of WTF-8.
https://github.com/Microsoft/vswhere/wiki/Installing
> This is a fixed location that will be maintained.
The is true no matter where Visual Studio is installed to.
I doubt even really old NT programs (pre 2000) using UCS-2 would have included unpaired surrogates because IIRC those code points were never mapped to actual characters so I don't think that's an issue in practice.
So in practice the only way invalid UTF-16 shows up is from malicious programs (or people testing their handling of non-unicode).
It can but you have to change some options (`/MT` iirc). And if you want to be really minimalist you only need to statically link the runtime (if you avoid using the C++ standard library).
Maybe I'm just old fashioned but I believe in individual freedom. I should have the right to choose. I should have the right to associate with who I want to associate with.
I'm really uncertain why people are so intent on taking away essential rights. Even though you may not agree with the choices people make, they should be allowed to make them.
Managing public health is difficult enough even without people forcing their choices on to others.