PR78494 add missing returns to propagate_const

2016-11-23  Felix Morgner  <felix.morgner@gmail.com>
	    Jonathan Wakely  <jwakely@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.

Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>

From-SVN: r242760
This commit is contained in:
Felix Morgner 2016-11-23 14:45:29 +00:00 committed by Jonathan Wakely
parent e600f2198f
commit f6cdfe8264
4 changed files with 15 additions and 3 deletions

View File

@ -1,3 +1,13 @@
2016-11-23 Felix Morgner <felix.morgner@gmail.com>
Jonathan Wakely <jwakely@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.
2016-11-22 Uros Bizjak <ubizjak@gmail.com>
* testsuite/Makefile.am

View File

@ -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

View File

@ -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()
{

View File

@ -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;