Libc++ currently implements the ATOMIC_<TYPE>_LOCK_FREE macros using the __GCC_ATOMIC_<TYPE>_LOCK_FREE macros. However these are not available when MSVC compatibility is enabled even though C11 _Atomic is. This prevents libc++ from correctly implementing ATOMIC_<TYPE>_LOCK_FREE.
This patch adds an alternative spelling __CLANG_ATOMIC_<TYPE>_LOCK_FREE that is enabled with -fms-compatibility.
I'd sink the _ into the prefix too, but this looks fine either way.