Files
loongoffice/external/mdds/c++17.patch
Stephan Bergmann c5f6043b0f Enable C++17 for clang-cl, too
Similar to libc++ in C++17 mode, some types like std::auto_ptr are indeed
removed in C++17 mode by default, and need _HAS_AUTO_PTR_ETC=1 to be enabled
(see <https://blogs.msdn.microsoft.com/vcblog/2017/12/08/c17-feature-removals-
and-deprecations/>).

Unlike libc++, also std::binary_function and std::unary_function are removed
(and need the same _HAS_AUTO_PTR_ETC=1 to enable).  So either set that flag to
make external code build, or use patches (for external/mdds) to make externals'
files included in LO proper still work there.

Change-Id: I886cc0de8196255334ee03ec48cb4bc54d460afd
Reviewed-on: https://gerrit.libreoffice.org/46514
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-15 22:23:31 +01:00

23 lines
687 B
Diff
Executable File

--- include/mdds/multi_type_matrix.hpp
+++ include/mdds/multi_type_matrix.hpp
@@ -149,7 +149,7 @@
private:
template<typename _Func>
- struct walk_func : std::unary_function<typename store_type::const_iterator::value_type, void>
+ struct walk_func
{
_Func& m_func;
walk_func(_Func& func) : m_func(func) {}
--- include/mdds/multi_type_vector.hpp
+++ include/mdds/multi_type_vector.hpp
@@ -139,7 +139,7 @@
block& operator=(block);
};
- struct element_block_deleter : public std::unary_function<void, const element_block_type*>
+ struct element_block_deleter
{
void operator() (const element_block_type* p)
{