[Boost-bugs] [Boost C++ Libraries] #11281: VS 2010 with LLVM

Subject: [Boost-bugs] [Boost C++ Libraries] #11281: VS 2010 with LLVM
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-05-11 09:29:15


#11281: VS 2010 with LLVM
---------------------------+------------------------------
 Reporter: aaron.adato@… | Type: Bugs
   Status: new | Milestone: To Be Determined
Component: None | Version: Boost 1.58.0
 Severity: Problem | Keywords:
---------------------------+------------------------------
 I can't compile anything that includes BOOST when I use as a compiler
 clang on MSVC 2010/2013. The error is a compiler error and not a linker
 error.
 I already built BOOST for CLANG on windows, but I didn't get to the
 linking stage.

 Here is the error log:

 1>------ Build started: Project: llvmTest, Configuration: Debug LLVM Win32
 ------
 1> In file included from Source.cpp:1:
 1> In file included from c:\Boost\include\boost-1_58\boost/thread.hpp:13:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread.hpp:12:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread_only.hpp:15:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_data.hpp:10:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread_time.hpp:9:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/date_time/time_clock.hpp:17:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/shared_ptr.hpp:17:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/smart_ptr/shared_ptr.hpp:28:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/shared_count.hpp:29:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base.hpp:45:
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(27,8): error :
 unknown type name '_Atomic'
 1> typedef _Atomic( boost::int_least32_t ) atomic_int_least32_t;
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(27,24): error :
 cannot define or redeclare 'int_least32_t' here because namespace 'detail'
 does not enclose namespace 'boost'
 1> typedef _Atomic( boost::int_least32_t ) atomic_int_least32_t;
 1> ~~~~~~~^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(27,24): error :
 typedef declarator cannot be qualified
 1> typedef _Atomic( boost::int_least32_t ) atomic_int_least32_t;
 1> ~~~~~~~^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(27,39): error :
 expected ';' after top level declarator
 1> typedef _Atomic( boost::int_least32_t ) atomic_int_least32_t;
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(29,30): error :
 unknown type name 'atomic_int_least32_t'
 1> inline void atomic_increment( atomic_int_least32_t * pw )
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(34,46): error :
 unknown type name 'atomic_int_least32_t'
 1> inline boost::int_least32_t atomic_decrement( atomic_int_least32_t *
 pw )
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(39,58): error :
 unknown type name 'atomic_int_least32_t'
 1> inline boost::int_least32_t atomic_conditional_increment(
 atomic_int_least32_t * pw )
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(68,4): error :
 unknown type name 'atomic_int_least32_t'
 1> atomic_int_least32_t use_count_; // #shared
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(69,4): error :
 unknown type name 'atomic_int_least32_t'
 1> atomic_int_least32_t weak_count_; // #weak + (#shared != 0)
 1> ^
 1>c:\Boost\include\boost-
 1_58\boost/smart_ptr/detail/sp_counted_base_clang.hpp(132,46): error :
 unknown type name 'atomic_int_least32_t'
 1> return __c11_atomic_load( const_cast< atomic_int_least32_t* >(
 &use_count_ ), __ATOMIC_ACQUIRE );
 1> ^
 1> In file included from Source.cpp:1:
 1> In file included from c:\Boost\include\boost-1_58\boost/thread.hpp:13:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread.hpp:12:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread_only.hpp:15:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_data.hpp:11:
 1>c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_primitives.hpp(183,53): error :
 redeclaration of 'Sleep' cannot add 'dllimport' attribute
 1> __declspec(dllimport) void __stdcall Sleep(unsigned
 long);
 1> ^
 1> c:\Boost\include\boost-1_58\boost/smart_ptr/detail/yield_k.hpp(63,28)
 : note: previous declaration is here
 1> extern "C" void __stdcall Sleep( unsigned long ms );
 1> ^
 1> In file included from Source.cpp:1:
 1> In file included from c:\Boost\include\boost-1_58\boost/thread.hpp:13:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread.hpp:12:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread_only.hpp:15:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_data.hpp:11:
 1>c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_primitives.hpp(418,20): error : no member
 named 'Sleep' in namespace 'boost::detail::win32'; did you mean simply
 'Sleep'?
 1> ::boost::detail::win32::Sleep(0);
 1> ^~~~~~~~~~~~~~~~~~~~~~~~
 1> c:\Boost\include\boost-1_58\boost/smart_ptr/detail/yield_k.hpp(63,28)
 : note: 'Sleep' declared here
 1> extern "C" void __stdcall Sleep( unsigned long ms );
 1> ^
 1> In file included from Source.cpp:1:
 1> In file included from c:\Boost\include\boost-1_58\boost/thread.hpp:13:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread.hpp:12:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/thread_only.hpp:15:
 1> In file included from c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_data.hpp:11:
 1>c:\Boost\include\boost-
 1_58\boost/thread/win32/thread_primitives.hpp(426,44): error : no type
 named 'Sleep' in namespace 'boost::detail::win32'
 1> ::boost::detail::win32::Sleep(milliseconds);
 1> ~~~~~~~~~~~~~~~~~~~~~~~~^
 1> 13 errors generated.
 ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped
 ==========

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/11281>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:18 UTC