mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-12-27 04:55:01 +08:00
mutex: Move std::lock_error to ...
2009-05-13 Jonathan Wakely <jwakely.gcc@gmail.com> * include/std/mutex: Move std::lock_error to ... * src/compatibility.cc: Here. * src/mutex.cc: Likewise. * testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks for lock types and remove std::lock_error check. From-SVN: r147609
This commit is contained in:
parent
40a8f07a47
commit
5c64575096
@ -1,3 +1,11 @@
|
||||
2009-05-13 Jonathan Wakely <jwakely.gcc@gmail.com>
|
||||
|
||||
* include/std/mutex: Move std::lock_error to ...
|
||||
* src/compatibility.cc: Here.
|
||||
* src/mutex.cc: Likewise.
|
||||
* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: Add checks
|
||||
for lock types and remove std::lock_error check.
|
||||
|
||||
2009-05-15 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
* testsuite/21_strings/basic_string/40160.cc: Remove spurious
|
||||
|
@ -386,18 +386,6 @@ namespace std
|
||||
extern const try_to_lock_t try_to_lock;
|
||||
extern const adopt_lock_t adopt_lock;
|
||||
|
||||
/**
|
||||
* @brief Thrown to indicate errors with lock operations.
|
||||
*
|
||||
* @ingroup exceptions
|
||||
*/
|
||||
class lock_error : public exception
|
||||
{
|
||||
public:
|
||||
virtual const char*
|
||||
_GLIBCXX_CONST what() const throw();
|
||||
};
|
||||
|
||||
/// @brief Scoped lock idiom.
|
||||
// Acquire the mutex here with a constructor call, then release with
|
||||
// the destructor call in accordance with RAII style.
|
||||
|
@ -513,6 +513,23 @@ extern __attribute__((used, weak)) const void * const _ZTIPKe[4]
|
||||
(void *) _ZTSPKe, (void *) 1L, (void *) _ZTIe };
|
||||
#endif // _GLIBCXX_LONG_DOUBLE_COMPAT
|
||||
|
||||
// gcc-4.4.0
|
||||
// <mutex> exported std::lock_error
|
||||
#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1)
|
||||
namespace std
|
||||
{
|
||||
class lock_error : public exception
|
||||
{
|
||||
public:
|
||||
virtual const char*
|
||||
_GLIBCXX_CONST what() const throw();
|
||||
};
|
||||
|
||||
const char*
|
||||
lock_error::what() const throw()
|
||||
{ return "std::lock_error"; }
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef _GLIBCXX_SYMVER_DARWIN
|
||||
|
@ -43,10 +43,6 @@ namespace std
|
||||
const try_to_lock_t try_to_lock = try_to_lock_t();
|
||||
const adopt_lock_t adopt_lock = adopt_lock_t();
|
||||
|
||||
const char*
|
||||
lock_error::what() const throw()
|
||||
{ return "std::lock_error"; }
|
||||
|
||||
#ifdef _GLIBCXX_HAVE_TLS
|
||||
__thread void* __once_callable;
|
||||
__thread void (*__once_call)();
|
||||
|
@ -35,7 +35,8 @@ void test01()
|
||||
using std::try_to_lock;
|
||||
using std::adopt_lock;
|
||||
|
||||
typedef std::lock_error error_t;
|
||||
typedef std::lock_guard<mutext_t> lock_t;
|
||||
typedef std::unique_lock<rmutext_t> ulock_t;
|
||||
|
||||
typedef std::once_flag once_t;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user