summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2014-08-07 23:54:53 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2014-08-07 23:54:53 +0100
commitdb0b7db3382d475b6b8782f06d87e34e6d06a52c (patch)
tree0220fea9d7f69eeaccc492329a5e026594268376
parentab498225eef7228881c5096cb57200f3e92e58dd (diff)
downloadgcc-db0b7db3382d475b6b8782f06d87e34e6d06a52c.tar.gz
future (__location_invariant): Move specializations after preprocessor condition.
* include/std/future (__location_invariant): Move specializations after preprocessor condition. From-SVN: r213744
-rw-r--r--libstdc++-v3/ChangeLog3
-rw-r--r--libstdc++-v3/include/std/future4
2 files changed, 5 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 00a76a82a68..6385f9b160e 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -26,6 +26,9 @@
and initialize _Task_setter with pointers.
(__location_invariant): Specialize for _Setter and _Task_setter.
+ * include/std/future (__location_invariant): Move specializations
+ after preprocessor condition.
+
2014-08-02 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/15339
diff --git a/libstdc++-v3/include/std/future b/libstdc++-v3/include/std/future
index c3aaaec22d9..8989474c74c 100644
--- a/libstdc++-v3/include/std/future
+++ b/libstdc++-v3/include/std/future
@@ -551,6 +551,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
void _M_destroy() { delete this; }
};
+#ifndef _GLIBCXX_ASYNC_ABI_COMPAT
+
// Allow _Setter objects to be stored locally in std::function
template<typename _Res, typename _Arg>
struct __is_location_invariant
@@ -563,8 +565,6 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
<__future_base::_Task_setter<_Res_ptr, _Fn, _Res>>
: true_type { };
-#ifndef _GLIBCXX_ASYNC_ABI_COMPAT
-
/// Common implementation for future and shared_future.
template<typename _Res>
class __basic_future : public __future_base