svn commit: r300967 - head/sys/sys
Dimitry Andric
dim at FreeBSD.org
Sun May 29 17:32:20 UTC 2016
Author: dim
Date: Sun May 29 17:32:19 2016
New Revision: 300967
URL: https://svnweb.freebsd.org/changeset/base/300967
Log:
Stop exposing the C11 _Atomic() macro in <sys/cdefs.h>, when compiling
for C++. It clashes with the one in libc++'s <atomic> header.
(Previously, the _Atomic() macro was defined in <stdatomic.h>, which is
only for use with C11, but for various reasons it was moved to its
current location in r251804.)
Discussed with: bdrewery, ed
MFC after: 2 weeks
Modified:
head/sys/sys/cdefs.h
Modified: head/sys/sys/cdefs.h
==============================================================================
--- head/sys/sys/cdefs.h Sun May 29 17:26:40 2016 (r300966)
+++ head/sys/sys/cdefs.h Sun May 29 17:32:19 2016 (r300967)
@@ -275,7 +275,8 @@
#define _Alignof(x) __alignof(x)
#endif
-#if !__has_extension(c_atomic) && !__has_extension(cxx_atomic)
+#if !defined(__cplusplus) && !__has_extension(c_atomic) && \
+ !__has_extension(cxx_atomic)
/*
* No native support for _Atomic(). Place object in structure to prevent
* most forms of direct non-atomic access.
More information about the svn-src-head
mailing list