svn commit: r239960 - head/include
Ed Schouten
ed at FreeBSD.org
Fri Aug 31 22:22:15 UTC 2012
Author: ed
Date: Fri Aug 31 22:22:14 2012
New Revision: 239960
URL: http://svn.freebsd.org/changeset/base/239960
Log:
Properly enable Clang-style atomics when available.
In addition to testing against cxx_atomic, we must check c_atomic. The
former is only set when building C++ code. Also use __has_extension
instead of __has_feature. This allows us to use the atomics outside of
C11.
Reported by: Ariane van der Steldt <ariane stack nl>
PR: threads/170073
Modified:
head/include/stdatomic.h
Modified: head/include/stdatomic.h
==============================================================================
--- head/include/stdatomic.h Fri Aug 31 21:45:49 2012 (r239959)
+++ head/include/stdatomic.h Fri Aug 31 22:22:14 2012 (r239960)
@@ -33,7 +33,7 @@
#include <sys/cdefs.h>
#include <sys/_types.h>
-#if __has_feature(cxx_atomic)
+#if __has_extension(c_atomic) || __has_extension(cxx_atomic)
#define __CLANG_ATOMICS
#elif __GNUC_PREREQ__(4, 7)
#define __GNUC_ATOMICS
More information about the svn-src-head
mailing list