@@ -28,10 +28,19 @@ namespace vsg
2828 inline void convert_utf (const std::string& src, std::string& dst) { dst = src; }
2929 inline void convert_utf (const std::wstring& src, std::wstring& dst) { dst = src; }
3030
31- #if defined(__cpp_char8_t)
31+ #if defined(__cpp_char8_t)
3232 inline void convert_utf (const std::u8string& src, std::u8string& dst) { dst = src; }
33- inline void convert_utf (const std::wstring& src, std::u8string& dst) { std::string temp_dst; convert_utf (src, temp_dst); dst.assign (temp_dst.begin (), temp_dst.end ()); }
34- inline void convert_utf (const std::u8string& src, std::wstring& dst) { std::string temp_src (src.begin (), src.end ()); convert_utf (temp_src, dst); }
33+ inline void convert_utf (const std::wstring& src, std::u8string& dst)
34+ {
35+ std::string temp_dst;
36+ convert_utf (src, temp_dst);
37+ dst.assign (temp_dst.begin (), temp_dst.end ());
38+ }
39+ inline void convert_utf (const std::u8string& src, std::wstring& dst)
40+ {
41+ std::string temp_src (src.begin (), src.end ());
42+ convert_utf (temp_src, dst);
43+ }
3544
3645 inline void convert_utf (const char8_t c, std::u8string& dst)
3746 {
@@ -56,7 +65,7 @@ namespace vsg
5665 convert_utf (src, dst);
5766 return dst;
5867 }
59- #endif
68+ #endif
6069
6170 inline void convert_utf (const char c, std::string& dst)
6271 {
0 commit comments