r261638 - in /trunk/libstdc++-v3: ChangeLog inc...

redi@gcc.gnu.org redi@gcc.gnu.org
Fri Jun 15 16:47:00 GMT 2018


Author: redi
Date: Fri Jun 15 16:47:55 2018
New Revision: 261638

URL: https://gcc.gnu.org/viewcvs?rev=261638&root=gcc&view=rev
Log:
Decorate string_view members with nonnull attribute

The C++ committee has confirmed that passing a null pointer to the
unary basic_string_view constructor is undefined. This removes the check
from our implementation, and adds the nonnull attribute to warn when the
compiler can detect undefined input.

	* include/std/string_view (basic_string_view(const CharT*)): Remove
	check for null pointer and add nonnull attribute.
	(compare(const CharT*), compare(size_type, size_type, const CharT*))
	(find(const CharT*, size_type), rfind(const CharT*, size_type))
	(find_first_of(const CharT*, size_type))
	(find_last_of(const CharT*, size_type))
	(find_first_not_of(const CharT*, size_type))
	(find_last_not_of(const CharT*, size_type)): Add nonnull attribute.
	* testsuite/21_strings/basic_string_view/cons/char/nonnull.cc: New.
	* testsuite/21_strings/basic_string_view/operations/compare/char/
	nonnull.cc: New.
	* testsuite/21_strings/basic_string_view/operations/find/char/
	nonnull.cc: New.
	* testsuite/21_strings/basic_string_view/operations/rfind/char/
	nonnull.cc: New.

Added:
    trunk/libstdc++-v3/testsuite/21_strings/basic_string_view/cons/char/nonnull.cc
    trunk/libstdc++-v3/testsuite/21_strings/basic_string_view/cons/wchar_t/nonnull.cc
    trunk/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/compare/char/nonnull.cc
    trunk/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/find/char/nonnull.cc
    trunk/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/rfind/char/nonnull.cc
Modified:
    trunk/libstdc++-v3/ChangeLog
    trunk/libstdc++-v3/include/std/string_view



More information about the Libstdc++-cvs mailing list