Commit 9d0bb2ea by François Dumont

create_testsuite_files: Add testsuite/experimental in the list of folders to search for tests.

2014-01-20  François Dumont  <fdumont@gcc.gnu.org>

	* scripts/create_testsuite_files: Add testsuite/experimental in
	the list of folders to search for tests.
	* include/experimental/string_view
	(basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
	incompatible with constexpr qualifier.
	(basic_string_view<>::front()): Likewise.
	(basic_string_view<>::back()): Likewise.
	* testsuite/experimental/string_view/element_access/wchar_t/2.cc:
	Merge dg-options directives into one.
	* testsuite/experimental/string_view/element_access/char/2.cc:
	Likewise. Remove invalid experimental namespace scope on
	string_view_type.

From-SVN: r206859
parent 1cf11770
2014-01-20 François Dumont <fdumont@gcc.gnu.org>
* scripts/create_testsuite_files: Add testsuite/experimental in
the list of folders to search for tests.
* include/experimental/string_view
(basic_string_view<>::operator[]): Comment _GLIBCXX_DEBUG_ASSERT,
incompatible with constexpr qualifier.
(basic_string_view<>::front()): Likewise.
(basic_string_view<>::back()): Likewise.
* testsuite/experimental/string_view/element_access/wchar_t/2.cc:
Merge dg-options directives into one.
* testsuite/experimental/string_view/element_access/char/2.cc:
Likewise. Remove invalid experimental namespace scope on
string_view_type.
2014-01-20 Jonathan Wakely <jwakely@redhat.com> 2014-01-20 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/56267 PR libstdc++/56267
......
...@@ -181,7 +181,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -181,7 +181,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr const _CharT& constexpr const _CharT&
operator[](size_type __pos) const operator[](size_type __pos) const
{ {
_GLIBCXX_DEBUG_ASSERT(__pos <= this->_M_len); // TODO: Assert to restore in a way compatible with the constexpr.
// _GLIBCXX_DEBUG_ASSERT(__pos <= this->_M_len);
return *(this->_M_str + __pos); return *(this->_M_str + __pos);
} }
...@@ -200,14 +201,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION ...@@ -200,14 +201,16 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
constexpr const _CharT& constexpr const _CharT&
front() const front() const
{ {
_GLIBCXX_DEBUG_ASSERT(this->_M_len > 0); // TODO: Assert to restore in a way compatible with the constexpr.
// _GLIBCXX_DEBUG_ASSERT(this->_M_len > 0);
return *this->_M_str; return *this->_M_str;
} }
constexpr const _CharT& constexpr const _CharT&
back() const back() const
{ {
_GLIBCXX_DEBUG_ASSERT(this->_M_len > 0); // TODO: Assert to restore in a way compatible with the constexpr.
// _GLIBCXX_DEBUG_ASSERT(this->_M_len > 0);
return *(this->_M_str + this->_M_len - 1); return *(this->_M_str + this->_M_len - 1);
} }
......
// { dg-options "-std=gnu++1y" }
// { dg-do run { xfail *-*-* } } // { dg-do run { xfail *-*-* } }
// { dg-options "-O0" } // { dg-options "-std=gnu++1y -O0" }
// { dg-require-debug-mode "" } // { dg-require-debug-mode "" }
// Copyright (C) 2013-2014 Free Software Foundation, Inc. // Copyright (C) 2013-2014 Free Software Foundation, Inc.
...@@ -26,6 +25,6 @@ int ...@@ -26,6 +25,6 @@ int
main() main()
{ {
typedef std::experimental::string_view string_view_type; typedef std::experimental::string_view string_view_type;
experimental::string_view_type s; string_view_type s;
s[0]; // abort s[0]; // abort
} }
// { dg-options "-std=gnu++1y" }
// { dg-do run { xfail *-*-* } } // { dg-do run { xfail *-*-* } }
// { dg-options "-O0" } // { dg-options "-std=gnu++1y -O0" }
// { dg-require-debug-mode "" } // { dg-require-debug-mode "" }
// Copyright (C) 2013-2014 Free Software Foundation, Inc. // Copyright (C) 2013-2014 Free Software Foundation, Inc.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment