diff -ru boost.orig/boost/libs/locale/src/encoding/codepage.cpp boost/boost/libs/locale/src/encoding/codepage.cpp --- foo/misc/boost.orig/libs/locale/src/encoding/codepage.cpp +++ foo/misc/boost/libs/locale/src/boost/locale/encoding/codepage.cpp @@ -52,6 +52,9 @@ } #endif #endif + // ensures we get a sensible warning in boost's gettext results about a real mismatch. + if (to_charset == from_charset) + return std::string(begin, end - begin); throw invalid_charset_error(std::string(to_charset) + " or " + from_charset); }