1 --- boost/multi_array/base.hpp
2 +++ boost/multi_array/base.hpp
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
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 );
25 # C:/PROGRA~2/WI3CF2~1/8.1/include/um\synchapi.h(908,1) : note: previous declaration is here
28 --- boost/smart_ptr/detail/yield_k.hpp
29 +++ boost/smart_ptr/detail/yield_k.hpp
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 );
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()
43 --- boost/thread/detail/config.hpp
44 +++ boost/thread/detail/config.hpp
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