summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2022-07-01 19:45:19 +0200
committerStephan Bergmann <sbergman@redhat.com>2022-07-01 22:18:20 +0200
commite37e1a7d2007bd6896027b69271774da2568e6f8 (patch)
tree5c2e0222a31e26286c6fb2a4f1c5467b89de3919 /external
parent9e2dbeea9f680f2d3d1611167820c197ce8a9685 (diff)
external/libnumbertext: Silence -Werror,-Wdeprecated-declarations
...as seen now with LLVM 15 trunk libc++, which marks the std::codecvt_utf8 and std::wstring_convert functionality, deprecated since C++17, as such (<https://github.com/llvm/llvm-project/commit/3ee9a50a146c585fc92f79e742c538261f98bd4e> "[libc++] Implement P0618R0 (Deprecating <codecvt>)") Change-Id: Id34e3fea540b76591ead8ba3df4c31a71d7b4aaf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136776 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'external')
-rw-r--r--external/libnumbertext/UnpackedTarball_libnumbertext.mk1
-rw-r--r--external/libnumbertext/deprecated.patch.049
2 files changed, 50 insertions, 0 deletions
diff --git a/external/libnumbertext/UnpackedTarball_libnumbertext.mk b/external/libnumbertext/UnpackedTarball_libnumbertext.mk
index 3a7a7ff6d85a..583b26308675 100644
--- a/external/libnumbertext/UnpackedTarball_libnumbertext.mk
+++ b/external/libnumbertext/UnpackedTarball_libnumbertext.mk
@@ -22,6 +22,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,libnumbertext, \
external/libnumbertext/MSVCNonBMPBug.patch1 \
external/libnumbertext/WinUnicodePath.patch1 \
external/libnumbertext/EmptyString.patch1 \
+ external/libnumbertext/deprecated.patch.0 \
))
# vim: set noet sw=4 ts=4:
diff --git a/external/libnumbertext/deprecated.patch.0 b/external/libnumbertext/deprecated.patch.0
new file mode 100644
index 000000000000..1fe5c214f602
--- /dev/null
+++ b/external/libnumbertext/deprecated.patch.0
@@ -0,0 +1,49 @@
+--- src/Numbertext.cxx
++++ src/Numbertext.cxx
+@@ -41,7 +41,14 @@
+ std::wifstream wif(filename);
+ if (wif.fail())
+ return false;
++#if defined __GNUC__
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
++#endif
+ wif.imbue(std::locale(std::locale(), new std::codecvt_utf8<wchar_t>));
++#if defined __GNUC__
++#pragma GCC diagnostic pop
++#endif
+ std::wstringstream wss;
+ wss << wif.rdbuf();
+ result = wss.str();
+@@ -122,8 +129,15 @@
+ MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, wstr.get(), nSize);
+ return wstr.get();
+ #elif !defined NUMBERTEXT_BOOST
++#if defined __GNUC__
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
++#endif
+ typedef std::codecvt_utf8<wchar_t> convert_type;
+ std::wstring_convert<convert_type, wchar_t> converter;
++#if defined __GNUC__
++#pragma GCC diagnostic pop
++#endif
+ return converter.from_bytes( s );
+ #else
+ return ::locale::conv::utf_to_utf<wchar_t>(s.c_str(), s.c_str() + s.size());
+@@ -138,8 +152,15 @@
+ WideCharToMultiByte(CP_UTF8, 0, s.c_str(), -1, str.get(), nSize, nullptr, nullptr);
+ return str.get();
+ #elif !defined NUMBERTEXT_BOOST
++#if defined __GNUC__
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
++#endif
+ typedef std::codecvt_utf8<wchar_t> convert_type;
+ std::wstring_convert<convert_type, wchar_t> converter;
++#if defined __GNUC__
++#pragma GCC diagnostic pop
++#endif
+ return converter.to_bytes( s );
+ #else
+ return ::locale::conv::utf_to_utf<char>(s.c_str(), s.c_str() + s.size());