From 1fba0606b813ab0925e7fc9ee92c9b57c7c3b94f Mon Sep 17 00:00:00 2001 From: Jonathan Wakely Date: Wed, 25 Jul 2018 11:40:12 +0100 Subject: Move std::unique_lock definition to a separate header This will allow std::mutex and std::lock_guard to be used elsewhere in the library without pulling in the whole of . Previously the whole of was conditional on the _GLIBCXX_USE_C99_STDINT_TR1 macro, but only the std::unique_lock members that use facilities should depend on that. std::mutex only needs to depend on _GLIBCXX_HAS_GTHREADS and std::lock_guard can be defined unconditionally. Some parts of and are based on code in which dates from 2003. However, the std::unique_lock implementation was added in 2008 by r135007, without using any earlier code. Therefore the new header file has copyright years 2008-2018. * include/Makefile.am: Add new header. * include/Makefile.in: Regenerate. * include/bits/std_mutex.h [!_GLIBCXX_USE_C99_STDINT_TR1] (mutex) (lock_guard): Define independent of _GLIBCXX_USE_C99_STDINT_TR1. (unique_lock): Move definition to ... * include/bits/unique_lock.h: New header. [!_GLIBCXX_USE_C99_STDINT_TR1] (unique_lock): Define unconditionally. [_GLIBCXX_USE_C99_STDINT_TR1] (unique_lock(mutex_type&, time_point)) (unique_lock(mutex_type&, duration), unique_lock::try_lock_until) (unique_lock::try_lock_for): Define only when is usable. * include/std/condition_variable: Include . * include/std/mutex: Likewise. From-SVN: r262963 --- libstdc++-v3/include/std/condition_variable | 1 + 1 file changed, 1 insertion(+) (limited to 'libstdc++-v3/include/std/condition_variable') diff --git a/libstdc++-v3/include/std/condition_variable b/libstdc++-v3/include/std/condition_variable index 84863a1..88ab775 100644 --- a/libstdc++-v3/include/std/condition_variable +++ b/libstdc++-v3/include/std/condition_variable @@ -37,6 +37,7 @@ #include #include +#include #include #include #include -- cgit v1.1