svn commit: r245327 - head/contrib/libcxxrt

David Chisnall theraven at FreeBSD.org
Sat Jan 12 10:07:00 UTC 2013


Author: theraven
Date: Sat Jan 12 10:06:59 2013
New Revision: 245327
URL: http://svnweb.freebsd.org/changeset/base/245327

Log:
  Fix libcxxrt / libc++ build with the clang in head.
  
  Pointy hat to:	theraven

Modified:
  head/contrib/libcxxrt/atomic.h

Modified: head/contrib/libcxxrt/atomic.h
==============================================================================
--- head/contrib/libcxxrt/atomic.h	Sat Jan 12 09:35:44 2013	(r245326)
+++ head/contrib/libcxxrt/atomic.h	Sat Jan 12 10:06:59 2013	(r245327)
@@ -11,7 +11,7 @@
  */
 #if __has_feature(cxx_atomic)
 #define ATOMIC_SWAP(addr, val)\
-	__atomic_exchange(addr, val, __ATOMIC_ACQ_REL)
+	__c11_atomic_exchange((_Atomic(__typeof__(val))*)addr, val, __ATOMIC_ACQ_REL)
 #elif __has_builtin(__sync_swap)
 #define ATOMIC_SWAP(addr, val)\
 	__sync_swap(addr, val)
@@ -22,7 +22,7 @@
 
 #if __has_feature(cxx_atomic)
 #define ATOMIC_LOAD(addr)\
-	__atomic_load(addr, __ATOMIC_ACQUIRE)
+	__c11_atomic_load((_Atomic(__typeof__(*addr))*)addr, __ATOMIC_ACQUIRE)
 #else
 #define ATOMIC_LOAD(addr)\
 	(__sync_synchronize(), *addr)


More information about the svn-src-all mailing list