[libc++] Mark usage of _Atomic with __extension__
authorLouis Dionne <ldionne@apple.com>
Tue, 3 Sep 2019 17:52:18 +0000 (17:52 +0000)
committerLouis Dionne <ldionne@apple.com>
Tue, 3 Sep 2019 17:52:18 +0000 (17:52 +0000)
An upcoming change in Clang will flag _Atomic as being a C11 extension.
To avoid generating this warning in libc++, this commit marks the only
use of _Atomic with the __extension__ extension, which suppresses such
warnings.

llvm-svn: 370796

libcxx/include/atomic

index afb431eda11da1eeb80f04d8e203d4b46189978f..0118ab5cf769154d2b752591545e3c7b032ae39c 100644 (file)
@@ -920,7 +920,7 @@ struct __cxx_atomic_base_impl {
 #endif // _LIBCPP_CXX03_LANG
   _LIBCPP_CONSTEXPR explicit __cxx_atomic_base_impl(_Tp value) _NOEXCEPT
     : __a_value(value) {}
-  _Atomic(_Tp) __a_value;
+  __extension__ _Atomic(_Tp) __a_value;
 };
 
 #define __cxx_atomic_is_lock_free(__s) __c11_atomic_is_lock_free(__s)