diff --git a/examples/common.cpp b/examples/common.cpp index f40bcf6d..81f95d28 100644 --- a/examples/common.cpp +++ b/examples/common.cpp @@ -248,14 +248,37 @@ std::map json_parse(const std::string & fname) { } std::string convert_to_utf8(const std::wstring & input) { +#if defined(__clang__) + // disable C++17 deprecation warning for std::codecvt_utf8 +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wdeprecated-declarations" +#endif + std::wstring_convert> converter; - return converter.to_bytes(input); + auto result = converter.to_bytes(input); + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + + return result; } - std::wstring convert_to_wstring(const std::string & input) { +#if defined(__clang__) + // disable C++17 deprecation warning for std::codecvt_utf8 +# pragma clang diagnostic push +# pragma clang diagnostic ignored "-Wdeprecated-declarations" +#endif + std::wstring_convert> converter; - return converter.from_bytes(input); + auto result = converter.from_bytes(input); + +#if defined(__clang__) +# pragma clang diagnostic pop +#endif + + return result; } void gpt_split_words(std::string str, std::vector& words) {