forked from OSchip/llvm-project
fcb37ae365
Removing Host/Atomic.h This header file was not being copied as part of our public API headers and this in turn was causing any plugin to link against LLDB.framework, since SharingPtr.h depends on it Out of several possible options to fix this issue, the cleanest one is to revert LLDB to use std::atomic<>, as we are a C++11 project and should take advantage of it The original rationale for going from std::atomic to Host/Atomic.h was that MSVC++ fails to link in CLR mode when std::atomic is used This is a very Visual Studio/.net specific issue, which hopefully will be fixed Until them, to allow Windows development to proceed, we are going with a targeted solution where we #ifdef include the Windows specific calls, and let everyone else use the proper atomic support, as should be If there is an unavoidable need for a LLDB-specific atomic header, the right way to go at it would be to make an API/lldb-atomic.h header and #ifdef the Windows dependency there The FormatManager should not need to conditionalize use of std::atomic<>, as other parts of the LLDB internals are successfully using atomic (Address and IRExecutionUnit), so this Win-specific hack is limited to SharingPtr llvm-svn: 192993 |
||
---|---|---|
.. | ||
ARM_DWARF_Registers.cpp | ||
ARM_DWARF_Registers.h | ||
ARM_GCC_Registers.h | ||
CMakeLists.txt | ||
KQueue.cpp | ||
KQueue.h | ||
Makefile | ||
PseudoTerminal.cpp | ||
Range.cpp | ||
SharingPtr.cpp | ||
StringExtractor.cpp | ||
StringExtractor.h | ||
StringExtractorGDBRemote.cpp | ||
StringExtractorGDBRemote.h | ||
TimeSpecTimeout.cpp | ||
TimeSpecTimeout.h | ||
UuidCompatibility.h |