-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Fails to build on recent libc++ (20 tested) #1812
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
Comments
Since this isn't a regression in libc++ (behavior now is actually more onpar with the standard) I have not filed a ticket with LLVM. Can either provide own implementation of char_traits<uint8_t> or remove usage altogether as from a superficial look, only testcases are using it. so just let the user provide supporting typedefs if so needed |
+1 I also have this issue |
I'm hitting this after upgrading my mac and getting apple-clang 17. |
Cpprestsdk fails to compile on newer MacOS due to missing char_traits. This provides the fix from microsoft/cpprestsdk#1820 Related to microsoft/cpprestsdk#1812
Cpprestsdk fails to compile on newer MacOS due to missing char_traits. This provides the fix from microsoft/cpprestsdk#1820 Related to microsoft/cpprestsdk#1812
Cpprestsdk fails to compile on newer MacOS due to missing char_traits. This provides the fix from microsoft/cpprestsdk#1820 Related to microsoft/cpprestsdk#1812
Cpprestsdk fails to compile on newer MacOS due to missing char_traits. This provides the fix from microsoft/cpprestsdk#1820 Related to microsoft/cpprestsdk#1812
I tracked down this source file Release/include/cpprest/streams.h
Here it assumes that the standard lib will accomodate instantiating a std::basic_string<uint8_t> or any other T for that matter, but that isn't the case as only the 'regular' char types are specialized for char_traits in the standard.
Current libstdc++ and older libc++ (up to at least libc++18) will accept this code, but not in recent libc++ where only the stipulated types are supported.
This can be isolated further with the following snippet:
Snippet:
msvc: OK
gcc: OK
clang+libstdc++: OK
clang+old-libc++: OK
clang+libc++-20: FAIL
The text was updated successfully, but these errors were encountered: