re PR libstdc++/64203 (shared_mutex compile errors on bare-metal targets)

PR libstdc++/64203
	* include/std/shared_mutex: Fix preprocessor conditions.
	* testsuite/experimental/feat-cxx14.cc: Check conditions.

From-SVN: r218511
This commit is contained in:
Jonathan Wakely 2014-12-09 11:03:57 +00:00 committed by Jonathan Wakely
parent ac6aeab4d7
commit 60b6534a84
3 changed files with 19 additions and 10 deletions

View File

@ -1,3 +1,9 @@
2014-12-09 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/64203
* include/std/shared_mutex: Fix preprocessor conditions.
* testsuite/experimental/feat-cxx14.cc: Check conditions.
2014-12-05 Jonathan Wakely <jwakely@redhat.com>
* include/bits/hashtable_policy.h (_Map_base::operator[],

View File

@ -36,10 +36,8 @@
#else
#include <bits/c++config.h>
#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
# include <mutex>
# include <condition_variable>
#endif
#include <mutex>
#include <condition_variable>
#include <bits/functexcept.h>
namespace std _GLIBCXX_VISIBILITY(default)
@ -51,7 +49,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
* @{
*/
#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
#ifdef _GLIBCXX_USE_C99_STDINT_TR1
#ifdef _GLIBCXX_HAS_GTHREADS
#define __cpp_lib_shared_timed_mutex 201402
@ -254,7 +253,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
}
};
#endif // _GLIBCXX_HAS_GTHREADS && _GLIBCXX_USE_C99_STDINT_TR1
#endif // _GLIBCXX_HAS_GTHREADS
/// shared_lock
template<typename _Mutex>
@ -393,6 +392,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
swap(shared_lock<_Mutex>& __x, shared_lock<_Mutex>& __y) noexcept
{ __x.swap(__y); }
#endif // _GLIBCXX_USE_C99_STDINT_TR1
// @} group mutexes
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace

View File

@ -106,10 +106,12 @@
# error "<shared_mutex>"
#endif
#ifndef __cpp_lib_shared_timed_mutex
# error "__cpp_lib_shared_timed_mutex"
#elif __cpp_lib_shared_timed_mutex != 201402
# error "__cpp_lib_shared_timed_mutex != 201402"
#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
# ifndef __cpp_lib_shared_timed_mutex
# error "__cpp_lib_shared_timed_mutex"
# elif __cpp_lib_shared_timed_mutex != 201402
# error "__cpp_lib_shared_timed_mutex != 201402"
# endif
#endif
#ifndef __cpp_lib_is_final