lok: vcl: fix multiple floatwin removal case more robustly.
[LibreOffice.git] / external / boost / clang-cl.patch.0
blob3990f27eb3f594b7e15f7f76febf3aca3b28f08e
1 --- boost/multi_array/base.hpp
2 +++ boost/multi_array/base.hpp
3 @@ -222,7 +222,7 @@
4  // MSVC 2010 is broken in debug mode: it requires
5  // that an Output Iterator have output_iterator_tag in its iterator_category if 
6  // that iterator is not bidirectional_iterator or random_access_iterator.
7 -#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600)
8 +#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600) || (defined __clang__ && BOOST_WORKAROUND(_MSC_VER, >= 1600))
9  struct mutable_iterator_tag
10   : boost::random_access_traversal_tag, std::input_iterator_tag
11  {
12 @@ -274,7 +274,7 @@
13    //
14    // iterator support
15    //
16 -#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600)
17 +#if BOOST_WORKAROUND(BOOST_MSVC, >= 1600) || (defined __clang__ && BOOST_WORKAROUND(_MSC_VER, >= 1600))
18    // Deal with VC 2010 output_iterator_tag requirement
19    typedef array_iterator<T,T*,mpl::size_t<NumDims>,reference,
20                           mutable_iterator_tag> iterator;
22 # 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]
23 #   extern "C" void __stdcall Sleep( unsigned long ms );
24 #                             ^
25 # C:/PROGRA~2/WI3CF2~1/8.1/include/um\synchapi.h(908,1) :  note: previous declaration is here
26 # Sleep(
27 # ^
28 --- boost/smart_ptr/detail/yield_k.hpp
29 +++ boost/smart_ptr/detail/yield_k.hpp
30 @@ -61,7 +61,7 @@
32  #if !defined( BOOST_USE_WINDOWS_H ) && !BOOST_PLAT_WINDOWS_RUNTIME
33  #if !BOOST_COMP_CLANG || !defined __MINGW32__
34 -  extern "C" void __stdcall Sleep( unsigned long ms );
35 +  extern "C" __declspec(dllimport) void __stdcall Sleep( unsigned long ms );
36  #else
37  #include <_mingw.h>
38  #if !defined __MINGW64_VERSION_MAJOR
40 # workdir/UnpackedTarball/boost/libs/thread/src/win32/thread.cpp(1006,36) :  error: dllimport cannot be applied to non-inline function definition
41 #     BOOST_THREAD_DECL void __cdecl on_process_enter()
42 #                                    ^
43 --- boost/thread/detail/config.hpp
44 +++ boost/thread/detail/config.hpp
45 @@ -396,7 +396,7 @@
46  #else //Use default
47  #   if defined(BOOST_THREAD_PLATFORM_WIN32)
48  #       if defined(BOOST_MSVC) || defined(BOOST_INTEL_WIN) \
49 -      || defined(__MINGW32__) || defined(MINGW32) || defined(BOOST_MINGW32)
50 +      || defined(__MINGW32__) || defined(MINGW32) || defined(BOOST_MINGW32) || defined __clang__
51        //For compilers supporting auto-tss cleanup
52              //with Boost.Threads lib, use Boost.Threads lib
53  #           define BOOST_THREAD_USE_LIB