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
This commit is contained in:
		| @@ -295,7 +295,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. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user