-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
<regex>
: Implement collating ranges
#5238
<regex>
: Implement collating ranges
#5238
Conversation
Fix trivial merge conflict in tests/std/test.lst.
Thanks! This makes sense and looks good to me. The comprehensive test coverage is excellent. 😻 I pushed a trivial merge with |
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
Thanks for sorting out this bug! 😹 🐞 🪄 |
Resolves #5204. Follow-up to #5164 and #5209.
When compiled under
/MD
or/MDd
, the new test cases specific to collating ranges are skipped:/Zc:wchar_t-
because the test will fail due to<locale>
:std::collate<wchar_t>
does not respect collation order when compiled with/MD(d) /Zc:wchar_t-
#5236._ITERATOR_DEBUG_LEVEL
because the stack will be corrupted whenstd::collate<wchar_t>::do_transform()
is called in the linked DLL.Drive-by changes:
_Parser::_Error()
as[[noreturn]]
._Matcher::_Skip()
and_Matcher::_Do_class()
,_STD
qualify calls to some free functions and clean up the control flow that translates the current character and converts it to an unsigned value.