1. 713f4db SFINAE out duration converting constructor if the constructor would otherwise cause a ratio compile-time overflow. This fixes LWG 2094. by Howard Hinnant · 11 years ago
  2. d179407 is_destructible for function types was mistakenly returning true instead of false. This is true in both C++11 and C++1y, but has been clarified by the post C++11 LWG issue 2049. by Howard Hinnant · 11 years ago
  3. cb0e6b6 Xing Xue: Fix type-o. Thanks to C. Bergström for spotting it. by Howard Hinnant · 11 years ago
  4. 09da3c0 LWG Issue 2128: Implement global cbegin/rbegin/cend/rbegin by Marshall Clow · 11 years ago
  5. 161a9bf Glen: Remove unneeded _LIBCPP_ALWAYS_INLINE. by Howard Hinnant · 11 years ago
  6. 5143722 Xing Xue: Some minor changes for IBM XLC++/AIX. by Howard Hinnant · 11 years ago
  7. 04a2c71 Turn off extern templates for most uses. It is causing more problems than it is worth. The extern templates will still be built into the dylib, mainly for ABI stability purposes. And the client can still turn these back on with a #define if desire. This fixes http://llvm.org/bugs/show_bug.cgi?id=17027. However there's no associated test for the test suite because http://llvm.org/bugs/show_bug.cgi?id=17027 needs mismatched dylib and headers to fire. by Howard Hinnant · 11 years ago
  8. 08b4f3f LWG Issue 2162: mark allocator_traits::maxsize as noexcept by Marshall Clow · 11 years ago
  9. 83179a7 LWG issues 2174/5/6 - mark wstring_convert::converted as noexcept, and make (some of) the constructors for wstring_convert and wbuffer_convert as explicit. Add configuration macro _LIBCPP_EXPLICIT_AFTER_CXX11 by Marshall Clow · 11 years ago
  10. e42f184 Update synopsis in <locale> to match LWG Issue 2229. No code change by Marshall Clow · 11 years ago
  11. af74651 Implement LWG issue 2061 by Marshall Clow · 11 years ago
  12. e1c5f9e Apply constexpr to initializer_list for c++1y. by Howard Hinnant · 11 years ago
  13. fc3f80b G M: Improve support for compilers not supporting defaulted functions. by Howard Hinnant · 11 years ago
  14. 5e57142 Rename _LIBCPP_DEBUG2 to _LIBCPP_DEBUG. by Howard Hinnant · 11 years ago
  15. 5d5f9f9 Remove _LIBCPP_DEBUG. This was my first attempt at debug mode for libc++, and is now obsoleted by _LIBCPP_DEBUG2 (which isn't finished). by Howard Hinnant · 11 years ago
  16. 499cea1 Debug mode for string. This commit also marks the first time libc++ debug-mode has found a bug (found one in regex). Had to play with extern templates a bit to get this to work since string is heavily used within libc++.dylib. by Howard Hinnant · 11 years ago
  17. e31c432 Glen: replace obsolete _LIBCPP_CANTTHROW with _NOEXCEPT. by Howard Hinnant · 11 years ago
  18. 9a894d9 Zhihao Yuan noted that there were a few unneeded statements. Eliminated the unnecessary ones, and commented the ones that are there for non-obvious reasons such as to help things limp along in C++03 language mode. by Howard Hinnant · 11 years ago
  19. 1c44f51 Zhihao Yuan noted that a move assignment operation was missing from std::adjacent_difference. Fixed. by Howard Hinnant · 11 years ago
  20. 8a1df3c David Blaikie suggested this test for detecting constexpr on the error_category default constructor. Additionally I decided to make this constructor trivial as well, as I could not come up with a rationale for not doing so. Fully tested with both current Apple clang and tip-of-trunk clang. by Howard Hinnant · 11 years ago
  21. 5c316a6 LWG 2145 - mark constructor for std::error_category as inline and constexpr. Leave the (existing, out-of-line, non-constexpr) in the dylib for compatibility with existing programs) by Marshall Clow · 11 years ago
  22. de8fc6b Relax complete-type check for functions and function pointers to allow void return type. This bug was exposed by Eli Friedman's commit to clang r188324. Anywhere this version of clang ships, this libc++ fix must follow. However this fix is compatible with previous clangs, and so this libc++ doesn't need to wait for this clang. by Howard Hinnant · 11 years ago
  23. 7f76450 Xing Xue: port to IBM XLC++/AIX. by Howard Hinnant · 11 years ago
  24. 2df3700 Add a deleted assignment operator for basic_ostream; LWG Issue #2067 by Marshall Clow · 11 years ago
  25. 198a2a5 Implement LWG Issue #2187 (emplace_back and emplace for vector<bool>) by Marshall Clow · 11 years ago
  26. 5cfc6ab Second half (map/multimap) of N3657 by Marshall Clow · 11 years ago
  27. 4a0a981 First half of support for N3657; heterogenous lookups for set/multiset by Marshall Clow · 11 years ago
  28. 0f678bd Nico Rieck: this patch series fixes visibility issues on Windows as explained in <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-August/031214.html>. by Howard Hinnant · 11 years ago
  29. 80e19ac Add a check for arrays of unknown bounds to is_destructible. This fixes http://llvm.org/bugs/show_bug.cgi?id=16839 by Howard Hinnant · 11 years ago
  30. 5ea5d31 Partial implementation of N3665. This paper was not voted into the C++1y draft. However I was looking at it and with some experimentation realized that I could partially implement it, and at the same time offer a performance optimization to cout. I simply added an xsputn override to the cout filebuf. The override does nothing special at all if there is a non-trivial codecvt installed. However if the codecvt returns true for always_noconv(), then this function can dump an entire string to fwrite, instead of doing it a character at a time under overflow(). This just makes sense. I stopped short of a full implementation of N3665 because in order to do so, xsputn would have to allocate a buffer when always_noconv() returned false, and I don't want to go to that expense. by Howard Hinnant · 11 years ago
  31. 051c848 N3644 tests for map/multimap/set/multiset. Drive-by NOEXCEPT for __tree_const_iterator constructor. Fix comment typos in other tests by Marshall Clow · 11 years ago
  32. a4e87ab My previous reorganization of addressof broke -std=c++03. Thanks much to Arnold Schwaighofer for catching this. This patch also catches a few more missing addressof in <future>, thanks go to Zhihao Yuan for catching these. by Howard Hinnant · 11 years ago
  33. a709c82 Revert r187927. by Arnold Schwaighofer · 11 years ago
  34. d8bfe7b Zhihao Yuan: Replace operator& with addressof in reference_wrapper constructor. by Howard Hinnant · 11 years ago
  35. 193ef03 N3644 support for <unordered_set> and <unordered_map> by Marshall Clow · 11 years ago
  36. b92ee61 N3644 support for vector<bool> by Marshall Clow · 11 years ago
  37. 0f164c9 N3644 support for <string> and <vector> by Marshall Clow · 11 years ago
  38. 36ba399 Correct logic bug in find optimization for vector<bool>. This fixes http://llvm.org/bugs/show_bug.cgi?id=16816 by Howard Hinnant · 11 years ago
  39. ab61b2c War on tabs by Howard Hinnant · 11 years ago
  40. 5a11f94 Implement NULL iterators for <forward_list> and <deque> re: N3644 by Marshall Clow · 11 years ago
  41. 65d2e6a Implement NULL iterators for <list> re: N3644 by Marshall Clow · 11 years ago
  42. 824c199 debug mode for unordered_map. Also picked up a missing check and test in unordered_multimap. This wraps up debug mode for the unordered containers. by Howard Hinnant · 11 years ago
  43. 8b00e6c Ok, 3 major changes for debug mode in one commit: by Howard Hinnant · 11 years ago
  44. e9df0a5 Nico Rieck: Currently _MSC_VER and _WIN32 are used to guard code which is by Howard Hinnant · 11 years ago
  45. 56dcf0b Taking another swing at correctly optimizing fill_n. by Howard Hinnant · 11 years ago
  46. eb34122 Constrain fill_n -> memset operations to include implicit convertibility to unsigned char. This fixes http://llvm.org/bugs/show_bug.cgi?id=16764. Also a drive-by fix on a chrono test suite bug. by Howard Hinnant · 11 years ago
  47. a61e6f8 Implement constexpr (n3302) and fix operator *= and /= by Marshall Clow · 11 years ago
  48. 0777473 Backwards! by Marshall Clow · 11 years ago
  49. 832b304 Implement n3469 - constexpr for chrono by Marshall Clow · 11 years ago
  50. f890d9b Debug mode for unordered_multimap. Some mods were done for unordered_map as well to keep all the tests passing. However unordered_map is at the very least still missing tests, if not functionality (if it isn't tested, it probably isn't working). by Howard Hinnant · 11 years ago
  51. 0bb0a7c Debug mode for unordered_multiset. The exercise spotted a few places I had missed on unordered_set, so I picked those up as well. by Howard Hinnant · 11 years ago
  52. ff46409 Implement N3421; comparison predicates<void> by Marshall Clow · 11 years ago
  53. f182038 literal suffixes for std::chrono by Marshall Clow · 11 years ago
  54. 3921364 Debug mode for unordered_set. I believe this to be fairly complete for by Howard Hinnant · 11 years ago
  55. 1523432 Implement string suffixes from N3642 by Marshall Clow · 11 years ago
  56. cd59acc Bill Fisher: This patch fixes a bug where std::regex in ECMAScript mode was ignoring capture groups inside lookahead assertions. by Howard Hinnant · 11 years ago
  57. 01fbfc2 Add some missing cv-qualifiers. by Richard Smith · 11 years ago
  58. b8e0d90 Fix a bug in std::fill_n where memset would end up being called in cases when it shouldn’t. by Anders Carlsson · 11 years ago
  59. da0a0e8 Make tuple's constructor and std::get<>(tuple) constexpr. Final stage of fixing bug #16599. Thanks to Howard for the review and updates. by Marshall Clow · 11 years ago
  60. 8fc4f5a Make std::get constexpr by Marshall Clow · 11 years ago
  61. 206f6cd Bug 16599 part 2: Make std::pair's constructors and comparison operators (and make_pair) constexpr. by Marshall Clow · 11 years ago
  62. 01a0e90 Make std::forward and std::move (and std::move_if_noexcept) constexpr in C++14 by Marshall Clow · 11 years ago
  63. 1e1d051 Bill Fisher: This patch fixes an ill-formed comparison when parsing control escapes, e.g. "\cA\ca". The code will now throw an error_escape exception for invalid control sequences like "\c:" or "\c". by Howard Hinnant · 11 years ago
  64. ac93d0e Add macro _LIBCPP_CONSTEXPR_AFTER_CXX11 for functions that have been marked constexpr post C++11 by Marshall Clow · 11 years ago
  65. e8029e5 Implement n3584 - Addressing Tuples by Type by Marshall Clow · 11 years ago
  66. e840208 Bill Fisher: This patch fixes a less likely case where '\b' can back up into invalid memory, when driven by a regex_iterator (for case 1, see r185273 or http://llvm.org/bugs/show_bug.cgi?id=16240) by Howard Hinnant · 11 years ago
  67. 809e93f move __save_flags from <random> to <ios> in preparation for reuse; no functionality change by Marshall Clow · 11 years ago
  68. 7670f7d Bill Fisher: This patch fixes a bug where regex_iterator doesn't indicate when it's restarting in the middle of a string. This bug causes /^a/ to match in the middle of the string "aaaaaaa", during iteration. by Howard Hinnant · 11 years ago
  69. 171771a War on tabs. by Howard Hinnant · 11 years ago
  70. e2735d1 Implement n3668 - std::exchange by Marshall Clow · 11 years ago
  71. d29bb4b Implement n3545 for c++14 by Marshall Clow · 11 years ago
  72. 9b128e0 Remove implicit conversion from __value_type to value_type in [unordered_][multi]map. This fixes http://llvm.org/bugs/show_bug.cgi?id=16549 by Howard Hinnant · 11 years ago
  73. b66e1c3 Removed extension in [unordered_][multi]map which allowed one to emplace using just an argument for the key, as opposed to using piecewise_construct. However a bug report exposed that this created an unfortunate ambiguity. People who are currently using the extension will be notified the next time they compile, and will have to change to using piecewise_construct. There are no ABI issues with the removal of this extension. This fixes http://llvm.org/bugs/show_bug.cgi?id=16542 by Howard Hinnant · 11 years ago
  74. e008d4e Simplify comparators of [unordered_][multi]map. This fixes http://llvm.org/bugs/show_bug.cgi?id=16538 by Howard Hinnant · 11 years ago
  75. 933afa9 Patch for N3655 (Transformation type traits) with Howard's additions by Marshall Clow · 11 years ago
  76. 42e55e9 Commit patch for integer sequences. Suggested by Richard, reworked by Howard, and annotated by me by Marshall Clow · 11 years ago
  77. 24ae8f8 Matthew Dempsky: Attached patch replaces the type punning with memcpy(), which on by Howard Hinnant · 11 years ago
  78. fb55110 Adorn make_unique with visibility and inline attributes by Marshall Clow · 11 years ago
  79. 839ae58 Matthew Dempsky: In libc++'s <locale>, there's already dependence on an snprintf_l by Howard Hinnant · 11 years ago
  80. 6a683bf Constrain launch ~ operator to defined bits. by Howard Hinnant · 11 years ago
  81. dbc8cf0 Bill Fisher: This patch fixes a bug where the regex parser doesn't advance the pointer after reading the third character of an octal escape (in awk mode). by Howard Hinnant · 11 years ago
  82. fd7481e Implement n3656 - make_unique. Thanks to Howard for the review and suggestions. by Marshall Clow · 11 years ago
  83. 7ec46bc Implement n3658 - Compile-time integer sequences by Marshall Clow · 11 years ago
  84. 11b8718 In istream::ignore, check the delimeter as an int_type, not as a char_type, so as to correctly handle EOF. This fixes http://llvm.org/bugs/show_bug.cgi?id=16427 by Howard Hinnant · 11 years ago
  85. 099dec1 The bind and function functor constructors and assignment operators were overly general and getting confused with the copy constructor and copy assignment operators. Constrained them. This fixes http://llvm.org/bugs/show_bug.cgi?id=16385 by Howard Hinnant · 11 years ago
  86. c05e986 Fix bind by making _is_valid_bind_return more robust. It should return false instead of give a compile time error, always. The problem was down in ____mu_return, the version that handles nested bind objects. This fixes http://llvm.org/bugs/show_bug.cgi?id=16343 by Howard Hinnant · 11 years ago
  87. a9602d5 Prevent '\b' from backing up into invalid memory. Fixes http://llvm.org/bugs/show_bug.cgi?id=16240. Sorry, I can not think of a good test case for this one, except by running valgrind as reported in the bug. by Howard Hinnant · 11 years ago
  88. f491e51 Add operators to make launch a bitmask type. Searched all of the standard, and libc++ to see if this error occurred elsewhere and didn't see any other place. This fixes http://llvm.org/bugs/show_bug.cgi?id=16207 by Howard Hinnant · 11 years ago
  89. ab135d7 Make cout a little more thread-safe. This fixes http://llvm.org/bugs/show_bug.cgi?id=12158 by Howard Hinnant · 11 years ago
  90. c1ecd97 Provide missing '{' in parsing extended quoted characters. This fixes http://llvm.org/bugs/show_bug.cgi?id=16135 by Howard Hinnant · 11 years ago
  91. e57b7c4 William Fisher: A bug in __lookahead::exec causes /(?=^)b/ to match ab. When makes a recursive call to , it passes true for the value of . This causes a beginning-of-line anchor (^) inside a lookahead assertion to match anywhere in the text. This fixes http://llvm.org/bugs/show_bug.cgi?id=11118 by Howard Hinnant · 11 years ago
  92. 918f2a8 Bill Fisher: Fix for failing to throw an exception in regex when parsing an invalid escape sequence. This fixes http://llvm.org/bugs/show_bug.cgi?id=16023 by Howard Hinnant · 11 years ago
  93. b9d9fb4 Dimitry Andric: Add const to constexpr member functions in order to cope with new C++1y language rules. This silences -Wconstexpr-not-const warnings. by Howard Hinnant · 11 years ago
  94. 9dcdcde Implement full support for non-pointer pointers in custom allocators for string. This completes the custom pointer support for the entire library. by Howard Hinnant · 11 years ago
  95. 2c39cbe Implement full support for non-pointer pointers in custom allocators for vector. by Howard Hinnant · 11 years ago
  96. 29f7432 Implement full support for non-pointer pointers in custom allocators for list. by Howard Hinnant · 11 years ago
  97. 81381a9 Implement full support for non-pointer pointers in custom allocators for forward_list. by Howard Hinnant · 11 years ago
  98. c7a39cf Fix typo in assertion message. Reported by Shriramana Sharma. by Dmitri Gribenko · 11 years ago
  99. fcd8db7 Implement full support for non-pointer pointers in custom allocators for deque. by Howard Hinnant · 11 years ago
  100. 7a6b7ce Implement full support for non-pointer types in custom allocators. This is for the unordered containers only. This work still needs to be done on the sequence containers. by Howard Hinnant · 11 years ago