aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2014-12-10 00:39:37 +0000
committerJonathan Wakely <redi@gcc.gnu.org>2014-12-10 00:39:37 +0000
commit9131b50960c20488a255ede40a3ebd3ed6b6bd82 (patch)
treec895c7aae5494f1b1e01c98245aeb378689359c1 /libstdc++-v3
parentd6f64424aa37b52776f4f24ba4f534bf915aa3a8 (diff)
downloadgcc-9131b50960c20488a255ede40a3ebd3ed6b6bd82.zip
gcc-9131b50960c20488a255ede40a3ebd3ed6b6bd82.tar.gz
gcc-9131b50960c20488a255ede40a3ebd3ed6b6bd82.tar.bz2
future (__future_base::_Setter::operator(), [...]): Make call operators const.
* include/std/future (__future_base::_Setter::operator(), __future_base::_Task_setter::operator()): Make call operators const. From-SVN: r218553
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog3
-rw-r--r--libstdc++-v3/include/std/future12
2 files changed, 9 insertions, 6 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 320a761..48ba1ff 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -8,6 +8,9 @@
* include/bits/locale_facets_nonio.h (__timepunct::_M_cache): Remove
unused declaration.
+ * include/std/future (__future_base::_Setter::operator(),
+ __future_base::_Task_setter::operator()): Make call operators const.
+
2014-12-09 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/64203
diff --git a/libstdc++-v3/include/std/future b/libstdc++-v3/include/std/future
index 157ceb3..31aaf98 100644
--- a/libstdc++-v3/include/std/future
+++ b/libstdc++-v3/include/std/future
@@ -455,7 +455,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
"Invalid specialisation");
// Used by std::promise to copy construct the result.
- typename promise<_Res>::_Ptr_type operator()()
+ typename promise<_Res>::_Ptr_type operator()() const
{
_State_baseV2::_S_check(_M_promise->_M_future);
_M_promise->_M_storage->_M_set(*_M_arg);
@@ -470,7 +470,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct _Setter<_Res, _Res&&>
{
// Used by std::promise to move construct the result.
- typename promise<_Res>::_Ptr_type operator()()
+ typename promise<_Res>::_Ptr_type operator()() const
{
_State_baseV2::_S_check(_M_promise->_M_future);
_M_promise->_M_storage->_M_set(std::move(*_M_arg));
@@ -487,7 +487,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct _Setter<_Res, __exception_ptr_tag>
{
// Used by std::promise to store an exception as the result.
- typename promise<_Res>::_Ptr_type operator()()
+ typename promise<_Res>::_Ptr_type operator()() const
{
_State_baseV2::_S_check(_M_promise->_M_future);
_M_promise->_M_storage->_M_error = *_M_ex;
@@ -1286,7 +1286,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<>
struct __future_base::_State_base::_Setter<void, void>
{
- promise<void>::_Ptr_type operator()()
+ promise<void>::_Ptr_type operator()() const
{
_State_base::_S_check(_M_promise->_M_future);
return std::move(_M_promise->_M_storage);
@@ -1310,7 +1310,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
struct __future_base::_Task_setter
{
// Invoke the function and provide the result to the caller.
- _Ptr_type operator()()
+ _Ptr_type operator()() const
{
__try
{
@@ -1333,7 +1333,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
template<typename _Ptr_type, typename _Fn>
struct __future_base::_Task_setter<_Ptr_type, _Fn, void>
{
- _Ptr_type operator()()
+ _Ptr_type operator()() const
{
__try
{