diff options
-rw-r--r-- | download.lst | 4 | ||||
-rw-r--r-- | external/boost/UnpackedTarball_boost.mk | 3 | ||||
-rw-r--r-- | external/boost/boost-android-unified.patch.1 | 46 | ||||
-rw-r--r-- | external/boost/boost.noiconv.patch | 6 | ||||
-rw-r--r-- | external/boost/clang-cl.patch.0 | 18 | ||||
-rw-r--r-- | external/boost/include/boost/uuid/sha1.hpp | 28 | ||||
-rw-r--r-- | external/boost/msvc2017.patch.0 | 22 | ||||
-rw-r--r-- | external/boost/rtti.patch.0 | 9 | ||||
-rw-r--r-- | external/boost/sse.patch.0 | 533 | ||||
-rw-r--r-- | sfx2/source/appl/shutdownicon.cxx | 2 | ||||
-rw-r--r-- | ucb/Library_ucpcmis1.mk | 11 |
11 files changed, 572 insertions, 110 deletions
diff --git a/download.lst b/download.lst index d6d35ed7d422..d43cdf06f27d 100644 --- a/download.lst +++ b/download.lst @@ -6,8 +6,8 @@ export APR_SHA256SUM := 1af06e1720a58851d90694a984af18355b65bb0d047be03ec7d659c7 export APR_TARBALL := apr-1.5.2.tar.gz export APR_UTIL_SHA256SUM := 976a12a59bc286d634a21d7be0841cc74289ea9077aa1af46be19d1a6e844c19 export APR_UTIL_TARBALL := apr-util-1.5.4.tar.gz -export BOOST_SHA256SUM := 5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9 -export BOOST_TARBALL := boost_1_66_0.tar.bz2 +export BOOST_SHA256SUM := 8f32d4617390d1c2d16f26a27ab60d97807b35440d45891fa340fc2648b04406 +export BOOST_TARBALL := boost_1_69_0.tar.bz2 export BREAKPAD_SHA256SUM := 7060149be16a8789b0ccf596bdeaf63115f03f520acb508f72a14686fb311cb9 export BREAKPAD_TARBALL := breakpad.zip export BSH_SHA256SUM := 9e93c73e23aff644b17dfff656444474c14150e7f3b38b19635e622235e01c96 diff --git a/external/boost/UnpackedTarball_boost.mk b/external/boost/UnpackedTarball_boost.mk index ca83476d95ee..86f52ded439e 100644 --- a/external/boost/UnpackedTarball_boost.mk +++ b/external/boost/UnpackedTarball_boost.mk @@ -30,7 +30,6 @@ boost_patches += clang-cl.patch.0 boost_patches += boost_1_60_0.undef.warning.patch boost_patches += boost_1_63_0.undef.warning.patch.1 -# https://svn.boost.org/trac10/ticket/13230 boost_patches += boost-android-unified.patch.1 boost_patches += windows-no-utf8-locales.patch.0 @@ -39,6 +38,8 @@ boost_patches += gcc9.patch.0 boost_patches += msvc2017.patch.0 +boost_patches += sse.patch.0 + $(eval $(call gb_UnpackedTarball_UnpackedTarball,boost)) $(eval $(call gb_UnpackedTarball_set_tarball,boost,$(BOOST_TARBALL))) diff --git a/external/boost/boost-android-unified.patch.1 b/external/boost/boost-android-unified.patch.1 index 458482a37c28..46181b862f49 100644 --- a/external/boost/boost-android-unified.patch.1 +++ b/external/boost/boost-android-unified.patch.1 @@ -1,28 +1,22 @@ -https://svn.boost.org/trac10/ticket/13230 unified headers causing trouble with that.. -diff -ur boost.org/libs/filesystem/src/operations.cpp boost/libs/filesystem/src/operations.cpp ---- boost.org/libs/filesystem/src/operations.cpp 2017-11-22 02:21:33.724304181 +0100 -+++ boost/libs/filesystem/src/operations.cpp 2017-11-22 02:21:59.686302450 +0100 -@@ -11,23 +11,6 @@ - //--------------------------------------------------------------------------------------// +--- a/boost/type_traits/detail/is_function_cxx_11.hpp ++++ b/boost/type_traits/detail/is_function_cxx_11.hpp +@@ -18,7 +18,7 @@ + template <class T> + struct is_function : public false_type {}; - // define 64-bit offset macros BEFORE including boost/config.hpp (see ticket #5355) --#if !(defined(__HP_aCC) && defined(_ILP32) && !defined(_STATVFS_ACPP_PROBLEMS_FIXED)) --#define _FILE_OFFSET_BITS 64 // at worst, these defines may have no effect, --#endif --#if !defined(__PGI) --#define __USE_FILE_OFFSET64 // but that is harmless on Windows and on POSIX -- // 64-bit systems or on 32-bit systems which don't have files larger -- // than can be represented by a traditional POSIX/UNIX off_t type. -- // OTOH, defining them should kick in 64-bit off_t's (and thus -- // st_size)on 32-bit systems that provide the Large File -- // Support (LFS)interface, such as Linux, Solaris, and IRIX. -- // The defines are given before any headers are included to -- // ensure that they are available to all included headers. -- // That is required at least on Solaris, and possibly on other -- // systems as well. --#else --#define _FILE_OFFSET_BITS 64 --#endif +-#if defined(__cpp_noexcept_function_type) && !defined(_MSC_VER) ++#if defined(__cpp_noexcept_function_type) && !defined(_MSC_VER) && !(defined __ANDROID__ && defined __clang__ && __clang_major__ == 5 && __clang_minor__ == 0 && __clang_patchlevel__ == 300080) + #define BOOST_TT_NOEXCEPT_PARAM , bool NE + #define BOOST_TT_NOEXCEPT_DECL noexcept(NE) + #else +--- a/boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp ++++ b/boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp +@@ -31,7 +31,7 @@ + template <class T> + struct is_member_function_pointer<T const volatile> : public is_member_function_pointer<T> {}; - // define BOOST_FILESYSTEM_SOURCE so that <boost/filesystem/config.hpp> knows - // the library is being built (possibly exporting rather than importing code) +-#if defined(_MSVC_LANG) && (_MSVC_LANG >= 201703) ++#if (defined(_MSVC_LANG) && (_MSVC_LANG >= 201703)) || (defined __ANDROID__ && defined __clang__ && __clang_major__ == 5 && __clang_minor__ == 0 && __clang_patchlevel__ == 300080) + // MSVC can't handle noexcept(b) as a deduced template parameter + // so we will have to write everything out :( + #define BOOST_TT_NOEXCEPT_PARAM diff --git a/external/boost/boost.noiconv.patch b/external/boost/boost.noiconv.patch index 5ea0aab385a8..1bce0414d4ba 100644 --- a/external/boost/boost.noiconv.patch +++ b/external/boost/boost.noiconv.patch @@ -6,7 +6,7 @@ diff -ru boost.orig/boost/libs/locale/src/encoding/codepage.cpp boost/boost/libs method_type how) { + #if defined(BOOST_LOCALE_WITH_ICONV) || defined(BOOST_LOCALE_WITH_ICU) || defined(BOOST_LOCALE_WITH_WCONV) - std::auto_ptr<converter_between> cvt; + hold_ptr<converter_between> cvt; #ifdef BOOST_LOCALE_WITH_ICONV cvt.reset(new iconv_between()); @@ -55,6 +56,7 @@ @@ -22,7 +22,7 @@ diff -ru boost.orig/boost/libs/locale/src/encoding/codepage.cpp boost/boost/libs method_type how) { + #if defined(BOOST_LOCALE_WITH_ICONV) || defined(BOOST_LOCALE_WITH_ICU) || defined(BOOST_LOCALE_WITH_WCONV) - std::auto_ptr<converter_to_utf<CharType> > cvt; + hold_ptr<converter_to_utf<CharType> > cvt; #ifdef BOOST_LOCALE_WITH_ICONV cvt.reset(new iconv_to_utf<CharType>()); @@ -81,6 +84,7 @@ @@ -38,7 +38,7 @@ diff -ru boost.orig/boost/libs/locale/src/encoding/codepage.cpp boost/boost/libs method_type how) { + #if defined(BOOST_LOCALE_WITH_ICONV) || defined(BOOST_LOCALE_WITH_ICU) || defined(BOOST_LOCALE_WITH_WCONV) - std::auto_ptr<converter_from_utf<CharType> > cvt; + hold_ptr<converter_from_utf<CharType> > cvt; #ifdef BOOST_LOCALE_WITH_ICONV cvt.reset(new iconv_from_utf<CharType>()); @@ -107,6 +112,7 @@ diff --git a/external/boost/clang-cl.patch.0 b/external/boost/clang-cl.patch.0 index e563c637e2c3..8834e4e626f3 100644 --- a/external/boost/clang-cl.patch.0 +++ b/external/boost/clang-cl.patch.0 @@ -19,24 +19,6 @@ typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference, mutable_iterator_tag> iterator; -# workdir/UnpackedTarball/boost\boost/smart_ptr/detail/yield_k.hpp(63,29) : error: 'Sleep' redeclared without 'dllimport' attribute: previous 'dll# import' ignored [-Werror,-Winconsistent-dllimport] -# extern "C" void __stdcall Sleep( unsigned long ms ); -# ^ -# C:/PROGRA~2/WI3CF2~1/8.1/include/um\synchapi.h(908,1) : note: previous declaration is here -# Sleep( -# ^ ---- boost/smart_ptr/detail/yield_k.hpp -+++ boost/smart_ptr/detail/yield_k.hpp -@@ -61,7 +61,7 @@ - - #if !defined( BOOST_USE_WINDOWS_H ) && !BOOST_PLAT_WINDOWS_RUNTIME - #if !BOOST_COMP_CLANG || !defined __MINGW32__ -- extern "C" void __stdcall Sleep( unsigned long ms ); -+ extern "C" __declspec(dllimport) void __stdcall Sleep( unsigned long ms ); - #else - #include <_mingw.h> - #if !defined __MINGW64_VERSION_MAJOR - # workdir/UnpackedTarball/boost/libs/thread/src/win32/thread.cpp(1006,36) : error: dllimport cannot be applied to non-inline function definition # BOOST_THREAD_DECL void __cdecl on_process_enter() # ^ diff --git a/external/boost/include/boost/uuid/sha1.hpp b/external/boost/include/boost/uuid/sha1.hpp deleted file mode 100644 index fbf81e6d34bb..000000000000 --- a/external/boost/include/boost/uuid/sha1.hpp +++ /dev/null @@ -1,28 +0,0 @@ -/* generated by bin/gen-boost-headers, do not edit! */ -#pragma once -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wpragmas" /* first! for GCC */ -#pragma GCC diagnostic ignored "-Wunknown-warning-option" // second! for Clang 5 -#pragma GCC diagnostic ignored "-Wdelete-non-virtual-dtor" -#pragma GCC diagnostic ignored "-Wdeprecated-declarations" -#pragma GCC diagnostic ignored "-Wdeprecated-copy" -#pragma GCC diagnostic ignored "-Wextra" -#pragma GCC diagnostic ignored "-Wignored-qualifiers" -#pragma GCC diagnostic ignored "-Wimplicit-fallthrough" -#pragma GCC diagnostic ignored "-Winvalid-constexpr" -#pragma GCC diagnostic ignored "-Wmicrosoft-unqualified-friend" -#pragma GCC diagnostic ignored "-Wnon-virtual-dtor" -#pragma GCC diagnostic ignored "-Wparentheses" -#pragma GCC diagnostic ignored "-Wplacement-new" -#pragma GCC diagnostic ignored "-Wreturn-type" -#pragma GCC diagnostic ignored "-Wshadow" -#pragma GCC diagnostic ignored "-Wstrict-aliasing" -#pragma GCC diagnostic ignored "-Wtautological-constant-out-of-range-compare" -#pragma GCC diagnostic ignored "-Wtype-limits" -#pragma GCC diagnostic ignored "-Wundef" -#pragma GCC diagnostic ignored "-Wunused-local-typedefs" -#pragma GCC diagnostic ignored "-Wunused-macros" -#pragma GCC diagnostic ignored "-Wunused-parameter" -#pragma GCC diagnostic ignored "-Wunused-variable" -#include_next <boost/uuid/sha1.hpp> -#pragma GCC diagnostic pop diff --git a/external/boost/msvc2017.patch.0 b/external/boost/msvc2017.patch.0 index e888fd96aba4..4b1002a17e96 100644 --- a/external/boost/msvc2017.patch.0 +++ b/external/boost/msvc2017.patch.0 @@ -1,25 +1,3 @@ ---- boost/circular_buffer/details.hpp -+++ boost/circular_buffer/details.hpp -@@ -216,12 +216,19 @@ - // Helper types - - //! Base iterator. -+#if defined _MSC_VER && !defined __clang__ -+#pragma warning(push) -+#pragma warning(disable: 4996) -+#endif - typedef std::iterator< - std::random_access_iterator_tag, - typename Traits::value_type, - typename Traits::difference_type, - typename Traits::pointer, - typename Traits::reference> base_iterator; -+#if defined _MSC_VER && !defined __clang__ -+#pragma warning(pop) -+#endif - - //! Non-const iterator. - typedef iterator<Buff, typename Traits::nonconst_self> nonconst_self; --- boost/iterator.hpp +++ boost/iterator.hpp @@ -13,7 +13,14 @@ diff --git a/external/boost/rtti.patch.0 b/external/boost/rtti.patch.0 index 104fd17989a1..249977a68721 100644 --- a/external/boost/rtti.patch.0 +++ b/external/boost/rtti.patch.0 @@ -2,15 +2,6 @@ Visible function type RTTI for Clang -fsanitize=function --- boost/function/function_base.hpp +++ boost/function/function_base.hpp -@@ -97,7 +97,7 @@ - } obj_ref; - }; - -- union function_buffer -+ union BOOST_SYMBOL_VISIBLE function_buffer - { - // Type-specific union members - mutable function_buffer_members members; @@ -159,7 +159,7 @@ }; diff --git a/external/boost/sse.patch.0 b/external/boost/sse.patch.0 new file mode 100644 index 000000000000..d431c185e7f8 --- /dev/null +++ b/external/boost/sse.patch.0 @@ -0,0 +1,533 @@ +--- boost/type_traits/detail/is_function_cxx_11.hpp ++++ boost/type_traits/detail/is_function_cxx_11.hpp +@@ -107,8 +107,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -120,8 +122,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -133,8 +137,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -146,8 +152,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // reference qualified: + #ifdef __CLR_VER +@@ -160,8 +168,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -173,8 +183,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -186,8 +198,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -199,8 +213,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // rvalue reference qualified: + #ifdef __CLR_VER +@@ -213,8 +229,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)&&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)&&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -226,8 +244,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -239,8 +259,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -252,8 +274,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + #endif // _MSC_VER + +@@ -339,8 +363,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -352,8 +378,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -365,8 +393,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -378,8 +408,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // reference qualified: + #ifdef __CLR_VER +@@ -392,8 +424,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -405,8 +439,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -418,8 +454,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -431,8 +469,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // rvalue reference qualified: + #ifdef __CLR_VER +@@ -445,8 +485,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -458,8 +500,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -471,8 +515,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -484,8 +530,10 @@ + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __fastcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_function<Ret __vectorcall(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + #endif // _MSC_VER + +--- boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp ++++ boost/type_traits/detail/is_member_function_pointer_cxx_11.hpp +@@ -121,8 +121,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -136,8 +138,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -151,8 +155,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -166,8 +172,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // reference qualified: + #ifdef __CLR_VER +@@ -182,8 +190,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -197,8 +207,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -212,8 +224,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -227,8 +241,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // rvalue reference qualified: + #ifdef __CLR_VER +@@ -243,8 +259,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -258,8 +276,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -273,8 +293,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -288,9 +310,11 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret (__vectorcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#endif + + + #if defined(_MSVC_LANG) && (_MSVC_LANG >= 201703) +@@ -375,8 +399,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -390,8 +416,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -405,8 +433,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -420,8 +450,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const volatile BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // reference qualified: + #ifdef __CLR_VER +@@ -436,8 +468,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -451,8 +485,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -466,8 +502,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -481,8 +519,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const volatile &BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + + // rvalue reference qualified: + #ifdef __CLR_VER +@@ -497,8 +537,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...) && BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -512,8 +554,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -527,8 +571,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + // const volatile: + #ifdef __CLR_VER + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> +@@ -542,8 +588,10 @@ + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__cdecl C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; + #endif ++#if !(defined _M_IX86_FP && _M_IX86_FP == 1) // error C2215: '__vectorcall' cannot be used with '/arch:SSE' + template <class Ret, class C, class...Args BOOST_TT_NOEXCEPT_PARAM> + struct is_member_function_pointer<Ret(__vectorcall C::*)(Args...)const volatile &&BOOST_TT_NOEXCEPT_DECL> : public true_type {}; ++#endif + #endif + + diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx index a24e254c7948..65c73de125d9 100644 --- a/sfx2/source/appl/shutdownicon.cxx +++ b/sfx2/source/appl/shutdownicon.cxx @@ -144,7 +144,7 @@ bool LoadModule() #endif // ENABLE_QUICKSTART_APPLET } assert(!boost::logic::indeterminate(loaded)); - return loaded; + return bool(loaded); } } diff --git a/ucb/Library_ucpcmis1.mk b/ucb/Library_ucpcmis1.mk index 03117a16a0d1..60761adbc08e 100644 --- a/ucb/Library_ucpcmis1.mk +++ b/ucb/Library_ucpcmis1.mk @@ -33,6 +33,17 @@ $(eval $(call gb_Library_use_externals,ucpcmis1,\ libxml2 \ )) +# On Windows, libcmis.lib(ws-relatedmultipart.o) references BCryptCloseAlgorithmProvider, +# BCryptGenRandom, and BCryptOpenAlgorithmProvider via +# workdir/UnpackedTarball/boost/boost/winapi/bcrypt.hpp: +ifeq ($(OS),WNT) +ifeq ($(SYSTEM_LIBCMIS)$(SYSTEM_BOOST),) +$(eval $(call gb_Library_add_libs,ucpcmis1, \ + Bcrypt.lib \ +)) +endif +endif + $(eval $(call gb_Library_add_exception_objects,ucpcmis1,\ ucb/source/ucp/cmis/auth_provider \ ucb/source/ucp/cmis/certvalidation_handler \ |