Marshall Clow
0168d34e23
Change string_view::at to make it work with gcc and VC++. Thanks to K-ballo for the bug report, and Jonathan Wakeley for the code review in the bar.
...
llvm-svn: 230260
2015-02-23 21:12:02 +00:00
Eric Fiselier
938d957d2e
Enable testing with _LIBCPP_DEBUG and fix bad assertions in string_view.
...
llvm-svn: 229698
2015-02-18 17:00:31 +00:00
Marshall Clow
f3e0e3acda
Move the test for zero-length into the char_traits (from string_view). Add tests to char_traits specializations
...
llvm-svn: 228981
2015-02-12 23:34:52 +00:00
Marshall Clow
8037b8ec6e
Fixed a problem that UBSAN found, where we were calling memcmp(null, p, 0) - which is undefined behavior
...
llvm-svn: 228952
2015-02-12 19:58:06 +00:00
Marshall Clow
eb63c5e28c
Replaced checking in string_view::remove_suffix/remove_prefix by _LIBCPP_ASSERT, since this is technically undefined behavior. Fixes PR#21496
...
llvm-svn: 221717
2014-11-11 22:07:10 +00:00
Marshall Clow
8ba95b7b4d
Mark string_view::to_string as const. Fixes PR21428
...
llvm-svn: 221101
2014-11-02 15:35:32 +00:00
Eric Fiselier
c1bd9197eb
NFC. Move definition of _LIBCPP_ASSERT into __debug header and remove external include guards.
...
Things done in this patch:
1. Make __debug include __config since it uses macros from it.
2. The current method of defining _LIBCPP_ASSERT is prone to redefinitions. Move
the null _LIBCPP_ASSERT definition into the __debug header to prevent this.
3. Remove external <__debug> include gaurds. <__debug> guards almost all of its
contents internally. There is no reason to be doing it externally.
This patch should not change any functionality.
llvm-svn: 215332
2014-08-10 23:53:08 +00:00
Eric Fiselier
04c39ece80
NFC. Remove trailing whitespace and tabs.
...
llvm-svn: 215326
2014-08-10 20:56:31 +00:00
Marshall Clow
926731b1e5
string_view enhancements. Move to the correct namespace. Better constexpr support (thanks to Richard for the suggestions). Update the tests to match this. Add <experimental/__config for experimental macros/etc to live.
...
llvm-svn: 212569
2014-07-08 22:38:11 +00:00
Marshall Clow
35af19ab1f
Minor cleanup for string_view; mostly from suggestions by Richard Smith. Also, make the tests pass under c++03
...
llvm-svn: 212185
2014-07-02 15:45:57 +00:00
Marshall Clow
2f4bfdecb3
Formatting improvements in the <string_view> synopsis suggested by RSmith. No functionality change.
...
llvm-svn: 211191
2014-06-18 17:44:04 +00:00
Marshall Clow
5aa8fa250d
Implement string_view from the library fundamentals TS (n4023). Also works in C++11 and 03, with reduced functionality (mostly in the area of constexpr)
...
llvm-svn: 210659
2014-06-11 16:44:55 +00:00