You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Outputting wide strings to std::cout outputs the void* under C++ before 20, and hits a deleted op<< in C++20. We should make it work, either by transcoding to UTF-8, or by using the codecvt facet of the output stream.
This might entail adding an adapter such as boost::core::narrow(x) that is similar to quoted(x) in that when output to a stream, it does the necessary narrowing using codecvt. (We can't add it to io because Core is not allowed to depend on Io.)
Related: we don't have a wide equivalent of BOOST_TEST_CSTR_EQ.
The text was updated successfully, but these errors were encountered:
We can't add it to io because Core is not allowed to depend on Io.
I don't like that we're adding stuff to Core just because we don't want to add it to the module where it really belongs. Code reuse must work, however modular we want to be.
Outputting wide strings to
std::cout
outputs thevoid*
under C++ before 20, and hits a deletedop<<
in C++20. We should make it work, either by transcoding to UTF-8, or by using thecodecvt
facet of the output stream.This might entail adding an adapter such as
boost::core::narrow(x)
that is similar toquoted(x)
in that when output to a stream, it does the necessary narrowing usingcodecvt
. (We can't add it toio
because Core is not allowed to depend on Io.)Related: we don't have a wide equivalent of
BOOST_TEST_CSTR_EQ
.The text was updated successfully, but these errors were encountered: