hanchenye-llvm-project/libcxx/src
Eric Fiselier 541f9e2830 Add _LIBCPP_COMPILER_[CLANG|GCC|MSVC|IBM] macros.
This patch refactors the compiler detection done in `__config` by creating a
set of `_LIBCPP_COMPILER_<TYPE>` macros. The goal of this patch is to make
it easier to detect what compiler is being used outside of `__config`.

Additionally this patch removes workarounds for GCC in `__bit_reference`. I
tested GCC 4.8 and 4.9 without the workaround and neither seemed to need it
anymore.

llvm-svn: 291286
2017-01-06 21:42:58 +00:00
..
experimental [NFC] Rename _LIBCPP_TYPE_VIS_ONLY to _LIBCPP_TEMPLATE_VIS 2017-01-04 23:56:00 +00:00
include config_elast: fix typo (NFC) 2017-01-05 23:25:44 +00:00
support win32: temporarily disable setting locale on 14+ 2017-01-02 21:09:16 +00:00
algorithm.cpp Mark libc++ internal globals with _LIBCPP_SAFE_STATIC. 2016-09-28 22:08:13 +00:00
any.cpp [libcxx] Add std::any 2016-08-11 03:13:11 +00:00
bind.cpp Implement LWG 2488 - Make the placeholders constexpr. 2016-06-26 21:01:34 +00:00
chrono.cpp clean up use of _WIN32 2017-01-03 21:53:51 +00:00
condition_variable.cpp Fix PR30202 - notify_all_at_thread_exit seg faults if run from a raw pthread context. 2016-09-03 08:07:40 +00:00
debug.cpp Fix debug mode build w/o exceptions 2016-12-28 05:20:27 +00:00
exception.cpp Recommit r290839 - Fix configuring and building libc++ w/o an ABI library. 2017-01-03 01:18:48 +00:00
future.cpp Make it possible to build a no-exceptions variant of libcxx. 2015-11-10 11:41:22 +00:00
hash.cpp
ios.cpp [libc++] Fix extern template visibility for Windows 2016-09-19 18:29:07 +00:00
iostream.cpp
locale.cpp Add _LIBCPP_COMPILER_[CLANG|GCC|MSVC|IBM] macros. 2017-01-06 21:42:58 +00:00
memory.cpp Fix std::pointer_safety type in ABI v2 2017-01-05 01:15:42 +00:00
mutex.cpp thread_support: split out {,non-}recursive mutex 2017-01-05 17:54:45 +00:00
new.cpp clean up use of _WIN32 2017-01-03 21:53:51 +00:00
optional.cpp Implement N4606 optional 2016-10-12 07:46:20 +00:00
random.cpp random: include __config before building 2016-12-31 00:00:21 +00:00
regex.cpp [libcxx] Remove pragmas that were needed to suppress warnings produced 2016-01-28 06:13:36 +00:00
shared_mutex.cpp
stdexcept.cpp Recommit r290839 - Fix configuring and building libc++ w/o an ABI library. 2017-01-03 01:18:48 +00:00
string.cpp Revert r284193 - it is not correct on OS X 2016-10-14 04:21:24 +00:00
strstream.cpp Fix or suppress GCC warnings during build. 2016-08-29 20:43:38 +00:00
system_error.cpp clean up use of _WIN32 2017-01-03 21:53:51 +00:00
thread.cpp clean up use of _WIN32 2017-01-03 21:53:51 +00:00
typeinfo.cpp Recommit r290839 - Fix configuring and building libc++ w/o an ABI library. 2017-01-03 01:18:48 +00:00
utility.cpp
valarray.cpp
variant.cpp Implement C++17 <variant>. Patch from Michael Park! 2016-12-02 23:00:05 +00:00