1191450Smarcel// Compatibility symbols for previous versions, C++0x bits -*- C++ -*- 2191450Smarcel 3191450Smarcel// Copyright (C) 2013-2020 Free Software Foundation, Inc. 4191450Smarcel// 5191450Smarcel// This file is part of the GNU ISO C++ Library. This library is free 6191450Smarcel// software; you can redistribute it and/or modify it under the 7191450Smarcel// terms of the GNU General Public License as published by the 8191450Smarcel// Free Software Foundation; either version 3, or (at your option) 9191450Smarcel// any later version. 10191450Smarcel 11191450Smarcel// This library is distributed in the hope that it will be useful, 12191450Smarcel// but WITHOUT ANY WARRANTY; without even the implied warranty of 13191450Smarcel// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14191450Smarcel// GNU General Public License for more details. 15191450Smarcel 16191450Smarcel// Under Section 7 of GPL version 3, you are granted additional 17191450Smarcel// permissions described in the GCC Runtime Library Exception, version 18191450Smarcel// 3.1, as published by the Free Software Foundation. 19191450Smarcel 20191450Smarcel// You should have received a copy of the GNU General Public License and 21191450Smarcel// a copy of the GCC Runtime Library Exception along with this program; 22191450Smarcel// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 23191450Smarcel// <http://www.gnu.org/licenses/>. 24191450Smarcel 25191450Smarcel#include <bits/c++config.h> 26191450Smarcel 27191450Smarcel#if __cplusplus < 201103L 28191450Smarcel# error "compatibility-condvar-c++0x.cc must be compiled with -std=gnu++11" 29191450Smarcel#endif 30191450Smarcel 31191450Smarcel#if defined(_GLIBCXX_HAS_GTHREADS) && defined(_GLIBCXX_USE_C99_STDINT_TR1) 32191450Smarcel 33191450Smarcel#define condition_variable_any condition_variable_anyXX 34191450Smarcel#include <condition_variable> 35209298Snwhitehorn#undef condition_variable_any 36191450Smarcel 37191450Smarcel// XXX GLIBCXX_ABI Deprecated 38191450Smarcel// gcc-4.9.0 39191450Smarcel// std::condition_variable_any replaced with std::_V2::condition_variable_any 40191450Smarcelnamespace std _GLIBCXX_VISIBILITY(default) 41191450Smarcel{ 42191450Smarcel_GLIBCXX_BEGIN_NAMESPACE_VERSION 43191450Smarcel class condition_variable_any 44191450Smarcel { 45191450Smarcel condition_variable _M_cond; 46191450Smarcel mutex _M_mutex; 47191450Smarcel 48191450Smarcel public: 49191450Smarcel condition_variable_any() noexcept; 50191450Smarcel ~condition_variable_any() noexcept; 51191450Smarcel }; 52191450Smarcel condition_variable_any::condition_variable_any() noexcept = default; 53191450Smarcel condition_variable_any::~condition_variable_any() noexcept = default; 54191450Smarcel_GLIBCXX_END_NAMESPACE_VERSION 55191450Smarcel} // namespace std 56191450Smarcel 57191450Smarcel#endif // _GLIBCXX_HAS_GTHREADS && _GLIBCXX_USE_C99_STDINT_TR1 58191450Smarcel