future (__future_base::_Setter::operator(), [...]): Make call operators const.
authorJonathan Wakely <jwakely@redhat.com>
Wed, 10 Dec 2014 00:39:37 +0000 (00:39 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Wed, 10 Dec 2014 00:39:37 +0000 (00:39 +0000)
* include/std/future (__future_base::_Setter::operator(),
__future_base::_Task_setter::operator()): Make call operators const.

From-SVN: r218553

libstdc++-v3/ChangeLog
libstdc++-v3/include/std/future

index 320a7617dea6a2d35687f1b591e4995ca667c4ed..48ba1ff96d7fc07c2b388d984605cc04294c808d 100644 (file)
@@ -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
index 157ceb3bffbb1e6f641ec4651c1ac13b27270981..31aaf9877b7907800b1e9f6334f3b495522b9131 100644 (file)
@@ -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
          {