- f60c63c Implement P1209 - Adopt Consistent Container Erasure from Library Fundamentals 2 for C++20. Reviewed as https://reviews.llvm.org/D55532 by Marshall Clow · 7 years ago
- 7dad0bd Second part of P0482 - char8_t. Reviewed as https://reviews.llvm.org/D55308 by Marshall Clow · 7 years ago
- 4d64d7d Implement P0966 - string::reserve should not shrink by Marshall Clow · 7 years ago
- e051f98 Remove duplicate _LIBCPP_INLINE_VISIBILITY attributes. by Eric Fiselier · 7 years ago
- 01a87ef Add basic_string::__resize_default_init (from P1072) by Eric Fiselier · 7 years ago
- 53922b7 [libcxx] Make sure operator+ is declared with the right visibility attribute by Louis Dionne · 7 years ago
- 352adb6 [libcxx] Mark stray symbols as hidden to try and fix the build by Louis Dionne · 7 years ago
- 835140a [libcxx] Make sure we can build with -fvisibility=hidden on Linux by Louis Dionne · 7 years ago
- 69067f2 Partial fix for PR38964. (<string> can't be built with gcc -std=c++03) Reviewed as https://reviews.llvm.org/D52240 by Marshall Clow · 7 years ago
- f56972e Implement the infrastructure for feature-test macros. Very few actual feature test macros, though. Reviewed as: https://reviews.llvm.org/D51955 by Marshall Clow · 7 years ago
- 81d0dbd Address "always inline function is not always inlinable" warning with GCC. by Eric Fiselier · 7 years ago
- 76b2685 Implement LWG 2946, 3075 and 3076. Reviewed as https://reviews.llvm.org/D48616 by Marshall Clow · 7 years ago
- 5a823d8 Mark __clear_and_shrink() as noexcept. This prevents the generation of a catch block and call to terminate in string's move assignment. Thanks to Howard for the 'catch'. by Marshall Clow · 7 years ago
- 4a6f3c4 Implement LWG3034: P0767R1 breaks previously-standard-layout types by Marshall Clow · 8 years ago
- fb36d079 Low-hanging fruit optimization in string::__move_assign(). by Vedant Kumar · 8 years ago
- 6d9f750 Implement deduction guide for basic_string as described in P0433 by Marshall Clow · 8 years ago
- fc94027 Fix PR#31454 - 'basic_string<T>::push_back() crashes if sizeof(T)>sizeof(long long)'. We were mishandling the small-string optimization calculations for very large 'characters'. This may be an ABI change (change the size of) strings of very large 'characters', but since they never worked, I'm not too concerned. by Marshall Clow · 8 years ago
- 785ae3e Change a static_assert to check for is_trivial instead of is_pod, as is mandated by P0767. by Marshall Clow · 8 years ago
- 800259c Implement P0457R2: 'String Prefix and Suffix Checking' for c++2a by Marshall Clow · 8 years ago
- 506a09b Fix std::string::data() symbol during library build. by Eric Fiselier · 8 years ago
- 25a7ba4 More of P0600 - '[[nodiscard]] in the Library' mark empty() as nodiscard in string, string_view, and the free function std::empty(). Removed tabs from <string_view>, which is why the diff is so big. by Marshall Clow · 8 years ago
- da01839 Refactor _LIBCPP_<LITTLE|BIG>_ENDIAN by Eric Fiselier · 8 years ago
- 064028b Add even more string_view tests. These found some bugs in the default parameter value for rfind/find_last_of/find_last_not_of by Marshall Clow · 8 years ago
- 191b7d1 [libc++] Hoist extern template above first use by Shoaib Meenai · 8 years ago
- 316a3e5 [libc++] Clean up cl warning 4231 disabling by Shoaib Meenai · 8 years ago
- 5b67cd3 [libc++] Mark string operator+ _LIBCPP_FUNC_VIS by Shoaib Meenai · 8 years ago
- 7e17e52 Fix unrepresentable enum for clang-cl unstable ABI by Ben Craig · 8 years ago
- 8e07cad [libc++] Hoist explicit instantiation above implicit. NFC by Shoaib Meenai · 8 years ago
- 9ffacf3 Fix more unreserved names by Eric Fiselier · 8 years ago
- a016efb [Libc++] Use #pragma push_macro/pop_macro to better handle min/max on Windows by Eric Fiselier · 8 years ago
- 414d17c Cleanup _LIBCPP_HAS_NO_<c++11-feature> in the string library. by Eric Fiselier · 8 years ago
- e84fcb5 Fix PR32642 - string::insert and string::append don't work with move_iterator. by Eric Fiselier · 8 years ago
- c88580c [libcxx] Fix __compressed_pair so it doesn't copy the argument multiple times, and add constexpr. by Eric Fiselier · 8 years ago
- fa5f2c5 string: Remove always_inline from basic_string::__init by Duncan P. N. Exon Smith · 8 years ago
- 4069c2b Implement LWG#2761: 'basic_string should require that charT match traits::char_type'. Tests for string_view, too by Marshall Clow · 9 years ago
- 84a2dad Disable unsigned integer sanitizer for basic_string::replace(). Patch from tomcherry@google.com by Eric Fiselier · 9 years ago
- bad28c4 [libc++] Make _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS export members by Shoaib Meenai · 9 years ago
- 63895ca Mark a couple for basic_string member templates as inline. no ABI change this time. by Eric Fiselier · 9 years ago
- de547c6 Remove more basic_string member function templates from the dylib exports by Eric Fiselier · 9 years ago
- dd3ba79 [libc++] Fix PR 31938 - std::basic_string constructors use non-deductible parameter types. by Eric Fiselier · 9 years ago
- dfc9947 Mark basic_string::assign templates as inline to improve ABI stability. by Eric Fiselier · 9 years ago
- d107be8 Fix PR#31779: basic_string::operator= isn't exception safe. by Marshall Clow · 9 years ago
- 5363be7 Fix GCC C++03 build by hiding default template argument in C++03 by Eric Fiselier · 9 years ago
- 38590b3 Fix std::string assignment ambiguity from braced initializer lists. by Eric Fiselier · 9 years ago
- e2f2d1e [NFC] Rename _LIBCPP_TYPE_VIS_ONLY to _LIBCPP_TEMPLATE_VIS by Eric Fiselier · 9 years ago
- 780b51d Add tests for unordered container tests and std::string by Eric Fiselier · 9 years ago
- fd83822 Fix unused parameters and variables by Eric Fiselier · 9 years ago
- 1c7fe12 Fixes for LWG 2598, 2686, 2739, 2742, 2747, and 2759, which were adopted last week in Issaquah by Marshall Clow · 9 years ago
- ebcc86e Add 'inline' but not 'always_inline' to std::strings destructor. by Eric Fiselier · 9 years ago
- 0f0a077 Remove additional function template definitions from the dylib by Eric Fiselier · 9 years ago
- a553330 Optimize filesystem::path by providing weaker exception guarantees. by Eric Fiselier · 9 years ago
- 31fdcf3 Revert "Added 'inline' attribute to basic_string's destructor" by Mehdi Amini · 9 years ago
- 8250781 Added 'inline' attribute to basic_string's destructor by Aditya Kumar · 9 years ago
- 35355bb Remove two ABI symbols added after the 3.9 release by Eric Fiselier · 9 years ago
- f2464a9 Change a couple of 'template <typename's to 'template <class' which is what we use in the rest of the library. by Marshall Clow · 9 years ago
- 54f0981 Implement proposed resolution for LWG#2758. Reviewed as D24446. Normally, I would wait for these to be voted upon at a committee meeting (November), but the current draft standard is broken, and this should fix it. (And if it doesn't, we want to know about it soonest) by Marshall Clow · 9 years ago
- f8f31c4 [libc++] Add _LIBCPP_EXTERN_TEMPLATE_INLINE_VISIBILITY to support GCC ABI compatibility by Eric Fiselier · 9 years ago
- 49e2967 [libc++] Fix and document visibility attributes for Clang, GCC and Windows. by Eric Fiselier · 9 years ago
- a75c1bf Revert r280944 - Added 'inline' attribute to basic_string's destructor by Eric Fiselier · 9 years ago
- b839888 Added 'inline' attribute to basic_string's destructor by Aditya Kumar · 9 years ago
- a77bb8e Fix PR#30303 - no matching function for call to '__ptr_in_range' by Marshall Clow · 9 years ago
- 7e1a230 Fix Bug 30240 - std::string: append(first, last) error when aliasing. Add test cases for append/insert/assign/replace while we're at it, and fix a similar bug in insert. by Marshall Clow · 9 years ago
- d437fa5 Add an _LIBCPP_NORETURN inline function named __throw_XXX for each exception type we define. They either construct and throw the exception, or abort() (if exceptions are disabled). Use these functions everywhere instead of assert()ing when exceptions are disabled. WARNING: This is a behavior change - but only with exceptions disabled. Reviewed as: https://reviews.llvm.org/D23855. by Marshall Clow · 9 years ago
- 51b4aee Add 'inline' attribute to __init to inline the basic_string's constructor by Sebastian Pop · 9 years ago
- 053d81c Implement std::string_view as described in http://wg21.link/P0254R1. Reviewed as https://reviews.llvm.org/D21459 by Marshall Clow · 9 years ago
- 89dd1dd Fix most GCC attribute ignored warnings by Eric Fiselier · 9 years ago
- 89685ed Recommit r263036 with additional inlining, so that it will continue to work with existing system dylibs. Implements LWG#2583 by Marshall Clow · 9 years ago
- 47c3a474 Revert r263036, it's ABI-breaking. by Nico Weber · 10 years ago
- ffc888b Implement LWG#2579: Inconsistency wrt Allocators in basic_string assignment vs. basic_string::assign by Marshall Clow · 10 years ago
- e96f8b5 Implement LWG#2583: There is no way to supply an allocator for basic_string(str, pos) by Marshall Clow · 10 years ago
- dd1729f Implement P0272R1: Give 'std::string' a non-const '.data()' member function by Marshall Clow · 10 years ago
- 28cc4dd Implement P0253R1: Fixing a design mistake in the searchers interface. by Marshall Clow · 10 years ago
- 76b4afc Fix PR#25973 : 'basic_string::assign(InputIt, InputIt) doesn't provide the strong exception safety guarantee'. This turned out to be a pervasive problem in <string>, which required a fair amount of rework. Add in an optimization for when iterators provide noexcept increment/comparison/assignment/dereference (which covers many of the iterators in libc++). Reviewed as http://reviews.llvm.org/D15862 by Marshall Clow · 10 years ago
- 906c872 Cleanup: move visibility/linkage attributes to the first declaration. by Evgeniy Stepanov · 10 years ago
- a66a7b3 ABI versioning macros for libc++. by Evgeniy Stepanov · 10 years ago
- 8428a9d Implement LWG#2063, and update the issues links to point to the github generated pages by Marshall Clow · 10 years ago
- e57e3ae Fix most GCC warnings during build. Only -Wattribute left. by Eric Fiselier · 10 years ago
- 8465ea4 [libcxx] Optimize away unneeded length calculation in basic_string::compare(const char*) by Eric Fiselier · 10 years ago
- 1378a5a implement more of N4258 - Cleaning up noexcept in the standard library. Specifically add new noexcept stuff to vector and string's move-assignment operations by Marshall Clow · 10 years ago
- 2d265ae Change char_traits<char16_t>::eof() to return 0xFFFF instead of 0xDFFF. Fixes PR#24342 by Marshall Clow · 10 years ago
- 87a8249 Enable and fix warnings during the build. by Eric Fiselier · 10 years ago
- e3fbe14 Implement the first part of N4258: 'Cleaning up noexcept in the Library'. This patch deals with swapping containers, and implements a more strict noexcept specification (a conforming extension) than the standard mandates. by Marshall Clow · 10 years ago
- 979550f While applying N4258, I forgot about LWG#2455, which modified the modifications. Correct those - h/t: Howard by Marshall Clow · 10 years ago
- cbf166a More of N4258 implementation. Mark all of our test_allocators as noexcept constructible. Make the constructors for basic_string noexcept all the time (under C++14). Update tests to reflect the new world order. More to come. by Marshall Clow · 10 years ago
- 9a79711 Rooting out more undefined behavior in char_traits. by Marshall Clow · 11 years ago
- f3e0e3a Move the test for zero-length into the char_traits (from string_view). Add tests to char_traits specializations by Marshall Clow · 11 years ago
- 910285b [libcxx] Fix use of operator comma where the types can be user defined by Eric Fiselier · 11 years ago
- 353f358 Fix char_traits functions for GCC compatibility. by Dan Albert · 11 years ago
- c1bd919 NFC. Move definition of _LIBCPP_ASSERT into __debug header and remove external include guards. by Eric Fiselier · 11 years ago
- 3dd8846 Fix bug #20335 - memory leak when move-constructing a string with unequal allocator. Thanks to Thomas Koeppe for the report by Marshall Clow · 11 years ago
- 9b0af34 Make the helper routines in string really be constexpr. This required a bit of refacoring in algorithm as well. Give them better names while we're at it. All of these are internal rotines; no visible functionality change. by Marshall Clow · 11 years ago
- 5f0701f Preparation for <string_view>. More helper functions that can be shared between <string> and <string_view>. No functionality change by Marshall Clow · 11 years ago
- f03763a Fix typos by Alp Toker · 11 years ago
- 53b88da Implement LWG #2268: Setting a default argument in the declaration of a member function assign of std::basic_string. by Marshall Clow · 12 years ago
- 53d8b20 Remove tabs that crept in during an earlier refactoring. No functionality change by Marshall Clow · 12 years ago
- 8283ba3 Refactor some of the operations in <string> so that they can be reused; no functionality change by Marshall Clow · 12 years ago
- e427322 Fix an off-by-one error in basic_string::__grow_by, where it would incorrectly throw length_error (instead of bad_alloc) when attempting to resize the string to 'max_size()'. Add tests for resizing to max_size +/-1 by Marshall Clow · 12 years ago
- f5fa538 Fixes PR17148 by Marshall Clow · 12 years ago
- 3ceafc7 Mark namespaces for user defined literals as 'inline' by Marshall Clow · 12 years ago
- 3af48ef G M: Changes all references to "x inline" to "inline x" where x = _libcpp_always_inline or _libcpp_inline_visibility macros. by Howard Hinnant · 12 years ago