2016-11-23 Felix Morgner <felix.morg...@gmail.com> Jonathan Wakely <jwak...@redhat.com>
PR libstdc++/78494 * include/experimental/propagate_const (propagate_const::operator=): Add missing return statements. * testsuite/experimental/propagate_const/assignment/move_neg.cc: Adjust dg-error line numbers. * testsuite/experimental/propagate_const/requirements2.cc: Likewise. Tested powerpvc64le-linux, committed to trunk. Will commit to gcc-6-branch too once testing finishes.
commit 601c37689f6d59e335f528bed5def2078236f2c8 Author: Jonathan Wakely <jwak...@redhat.com> Date: Wed Nov 23 14:28:26 2016 +0000 PR78494 add missing returns to propagate_const 2016-11-23 Felix Morgner <felix.morg...@gmail.com> Jonathan Wakely <jwak...@redhat.com> PR libstdc++/78494 * include/experimental/propagate_const (propagate_const::operator=): Add missing return statements. * testsuite/experimental/propagate_const/assignment/move_neg.cc: Adjust dg-error line numbers. * testsuite/experimental/propagate_const/requirements2.cc: Likewise. diff --git a/libstdc++-v3/include/experimental/propagate_const b/libstdc++-v3/include/experimental/propagate_const index 5f32111..635d4ed 100644 --- a/libstdc++-v3/include/experimental/propagate_const +++ b/libstdc++-v3/include/experimental/propagate_const @@ -156,6 +156,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION constexpr propagate_const& operator=(propagate_const<_Up>&& __pu) { _M_t = std::move(get_underlying(__pu)); + return *this; } template <typename _Up, typename = @@ -166,6 +167,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION constexpr propagate_const& operator=(_Up&& __u) { _M_t = std::forward<_Up>(__u); + return *this; } // [propagate_const.const_observers], const observers diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc b/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc index 0dc72a2..1423220 100644 --- a/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc +++ b/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc @@ -25,7 +25,7 @@ using std::experimental::propagate_const; using std::unique_ptr; -// { dg-error "no type" "" { target *-*-* } 161 } +// { dg-error "no type" "" { target *-*-* } 162 } int main() { diff --git a/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc b/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc index 199be37..d713911 100644 --- a/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc +++ b/libstdc++-v3/testsuite/experimental/propagate_const/requirements2.cc @@ -23,7 +23,7 @@ using std::experimental::propagate_const; // { dg-error "requires a class or a pointer to an object type" "" { target *-*-* } 107 } // { dg-error "not a pointer-to-object type" "" { target *-*-* } 68 } -// { dg-error "forming pointer to reference type" "" { target *-*-* } 187 } -// { dg-error "forming pointer to reference type" "" { target *-*-* } 213 } +// { dg-error "forming pointer to reference type" "" { target *-*-* } 189 } +// { dg-error "forming pointer to reference type" "" { target *-*-* } 215 } propagate_const<void*> test1;