aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2016-07-21 20:39:03 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2016-07-21 20:39:03 +0100
commit8b649cd3ba1c5799f682455aaa77587374be1524 (patch)
tree97002a670d10a97e8ca8184d3e7deb0af38fd1ad /libstdc++-v3
parent509b778f6cb7c99159ecdf3e4caa28468b2f46e5 (diff)
downloadgcc-8b649cd3ba1c5799f682455aaa77587374be1524.zip
gcc-8b649cd3ba1c5799f682455aaa77587374be1524.tar.gz
gcc-8b649cd3ba1c5799f682455aaa77587374be1524.tar.bz2
Fix naming, qualification and broken test for propagate_const
* include/experimental/propagate_const (propagate_const::__t): Rename to _M_t and remove comment. Qualify std::move and std::forward. * testsuite/experimental/propagate_const/cons/default.cc: Fix test. From-SVN: r238611
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog4
-rw-r--r--libstdc++-v3/include/experimental/propagate_const26
-rw-r--r--libstdc++-v3/testsuite/experimental/propagate_const/cons/default.cc5
3 files changed, 20 insertions, 15 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 9a0a71b..ce7490d 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,9 @@
2016-07-21 Jonathan Wakely <jwakely@redhat.com>
+ * include/experimental/propagate_const (propagate_const::__t): Rename
+ to _M_t and remove comment. Qualify std::move and std::forward.
+ * testsuite/experimental/propagate_const/cons/default.cc: Fix test.
+
* testsuite/23_containers/vector/zero_sized_allocations.cc:
Define sized deallocation function.
* testsuite/util/testsuite_new_operators.h:
diff --git a/libstdc++-v3/include/experimental/propagate_const b/libstdc++-v3/include/experimental/propagate_const
index ea052ca..75cd8c0a 100644
--- a/libstdc++-v3/include/experimental/propagate_const
+++ b/libstdc++-v3/include/experimental/propagate_const
@@ -116,14 +116,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
is_convertible<_Up&&, _Tp>>::value, bool
>::type=true>
constexpr propagate_const(propagate_const<_Up>&& __pu)
- : __t(move(get_underlying(__pu)))
+ : _M_t(std::move(get_underlying(__pu)))
{}
template <typename _Up, typename
enable_if<__and_<is_constructible<_Tp, _Up&&>,
__not_<is_convertible<_Up&&, _Tp>>>::value,
bool>::type=false>
constexpr explicit propagate_const(propagate_const<_Up>&& __pu)
- : __t(move(get_underlying(__pu)))
+ : _M_t(std::move(get_underlying(__pu)))
{}
template <typename _Up, typename
enable_if<__and_<is_constructible<_Tp, _Up&&>,
@@ -132,7 +132,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typename decay<_Up>::type>>
>::value, bool>::type=true>
constexpr propagate_const(_Up&& __u)
- : __t(forward<_Up>(__u))
+ : _M_t(std::forward<_Up>(__u))
{}
template <typename _Up, typename
enable_if<__and_<is_constructible<_Tp, _Up&&>,
@@ -141,7 +141,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typename decay<_Up>::type>>
>::value, bool>::type=false>
constexpr explicit propagate_const(_Up&& __u)
- : __t(forward<_Up>(__u))
+ : _M_t(std::forward<_Up>(__u))
{}
// [propagate_const.assignment], assignment
@@ -152,7 +152,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
typename enable_if<is_convertible<_Up&&, _Tp>::value>::type>
constexpr propagate_const& operator=(propagate_const<_Up>&& __pu)
{
- __t = move(get_underlying(__pu));
+ _M_t = std::move(get_underlying(__pu));
}
template <typename _Up, typename =
@@ -162,13 +162,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
>::value>::type>
constexpr propagate_const& operator=(_Up&& __u)
{
- __t = forward<_Up>(__u);
+ _M_t = std::forward<_Up>(__u);
}
// [propagate_const.const_observers], const observers
explicit constexpr operator bool() const
{
- return bool(__t);
+ return bool(_M_t);
}
constexpr const element_type* operator->() const
@@ -193,7 +193,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr const element_type* get() const
{
- return __to_raw_pointer(__t);
+ return __to_raw_pointer(_M_t);
}
// [propagate_const.non_const_observers], non-const observers
@@ -219,7 +219,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr element_type* get()
{
- return __to_raw_pointer(__t);
+ return __to_raw_pointer(_M_t);
}
// [propagate_const.modifiers], modifiers
@@ -227,11 +227,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
swap(propagate_const& __pt) noexcept(__is_nothrow_swappable<_Tp>::value)
{
using std::swap;
- swap(__t, get_underlying(__pt));
+ swap(_M_t, get_underlying(__pt));
}
private:
- _Tp __t; //exposition only
+ _Tp _M_t;
};
// [propagate_const.relational], relational operators
@@ -408,14 +408,14 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr const _Tp&
get_underlying(const propagate_const<_Tp>& __pt) noexcept
{
- return __pt.__t;
+ return __pt._M_t;
}
template <typename _Tp>
constexpr _Tp&
get_underlying(propagate_const<_Tp>& __pt) noexcept
{
- return __pt.__t;
+ return __pt._M_t;
}
// @} group propagate_const
diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/cons/default.cc b/libstdc++-v3/testsuite/experimental/propagate_const/cons/default.cc
index 6a9a8c6..ed597fb 100644
--- a/libstdc++-v3/testsuite/experimental/propagate_const/cons/default.cc
+++ b/libstdc++-v3/testsuite/experimental/propagate_const/cons/default.cc
@@ -27,6 +27,7 @@ int main()
{
constexpr propagate_const<int*> test1{};
static_assert(!test1.get(), "");
- propagate_const<int*> test2;
- VERIFY(!test2.get());
+ propagate_const<int*> test2; // wrapped pointer is not initialized
+ propagate_const<int*> test3{};
+ VERIFY(!test3.get());
}