1. ae57a1a Numeric parsing was getting the wrong answer when faced with very long inputs. This fixes both http://llvm.org/bugs/show_bug.cgi?id=15751 and http://llvm.org/bugs/show_bug.cgi?id=15740 by Howard Hinnant · 12 years ago
  2. 9932489 Accidentally disallowed explicit tuple conversions when all elements of the tuple can be explicitly converted. by Howard Hinnant · 12 years ago
  3. 4f67100 Set failbit when strtold sets errno to ERANGE when parsing floating point values. by Howard Hinnant · 12 years ago
  4. 6dcaf3e Fix bug in __libcpp_db::__iterator_copy. Add debug test for swaping lists. by Howard Hinnant · 12 years ago
  5. e1e96cb More list debug mode tests. by Howard Hinnant · 12 years ago
  6. 79a3557 More work on debug mode for list. by Howard Hinnant · 12 years ago
  7. 128f7bf Somehow search_n never got tested, so of course it had a bug in it. This fixes http://llvm.org/bugs/show_bug.cgi?id=15667. by Howard Hinnant · 12 years ago
  8. 4aa8b06 The move / swap members were not correctly taking all of the possible states of the basic_stringbuf into account. Just rewrote these members. Test included. This fixes http://llvm.org/bugs/show_bug.cgi?id=15659. by Howard Hinnant · 12 years ago
  9. 11a50ac Richard Smith: It was pointed out to me off-list that libc++'s non-compiler-builtin by Howard Hinnant · 12 years ago
  10. d4c96a6 Some debug test cases for list. by Howard Hinnant · 12 years ago
  11. 9d00ed5 Test case was forming the wrong limits when size_t != unsigned long. by Howard Hinnant · 12 years ago
  12. 8b25c00 The 3rd test in shrink_to_fit.pass.cpp can't possibly pass if exceptions are disabled, so #ifdef'ing out the test. by Howard Hinnant · 12 years ago
  13. 34d36f3 Revert r178075, "Tighten up the iterator requirements ...", it breaks LLVM by Daniel Dunbar · 12 years ago
  14. 32d40f5 Tighten up the iterator requirements for the vector member templates. This is especially important for the constructors so that is_constructible<vector<T>, I, I> gives the right answer when T can not be constructed from *I. Test case included for this latter point. by Howard Hinnant · 12 years ago
  15. 02d5e18 Another vector debug mode test, and a static test on Allocator::value_type. This partially addresses http://llvm.org/bugs/show_bug.cgi?id=15576. by Howard Hinnant · 12 years ago
  16. d1c0082 More vector debug tests. by Howard Hinnant · 12 years ago
  17. c3a9b81 Fixed race conditions in thread tests; exposed by UBSan by Marshall Clow · 12 years ago
  18. 3fbd1df Simply debug mode tests per Dmitri Gribenko's suggestion. by Howard Hinnant · 12 years ago
  19. d9cdb2d Need one more swap overload for swapping two lvalue vector<bool>::reference's. by Howard Hinnant · 12 years ago
  20. 782da33 Added debug tests for indexing, pop_back and both forms of erase. Added an improved error message for erasing a single element with end(). by Howard Hinnant · 12 years ago
  21. c1ca2e1 Remove some erroneous code I was using to debug debug mode. by Howard Hinnant · 12 years ago
  22. 295891f Debug mode tests for vector::front and back. by Howard Hinnant · 12 years ago
  23. 0d01eb5 More vector::iterator debug mode tests. Run by adding to OPTIONS -D_LIBCPP_DEBUG2=1. by Howard Hinnant · 12 years ago
  24. f5f4684 Debug mode: learning to crawl. I need to set up some tests that actually test that the debug mode is working, but that won't cause problems when debug mode isn't on. This is my first prototype of such a test. It should call std::terminate() because it's comparing iterators from different containers. And std::terminate() is rigged up to exit normally. If debug mode fails, and doesn't call terminate, then the program asserts. The test is a no-op if _LIBCPP_DEBUG2 is not defined or is defined to be 0. by Howard Hinnant · 12 years ago
  25. ae7bf9d Marshall Clow found some divide-by-zero warnings with UBSan in rand's binomial_distribution test. This eliminates the divide-by-zeros and describes in comments the numerical difficulties the test is having. Each of the problematic tests are exploring edge cases of the distribution. by Howard Hinnant · 12 years ago
  26. 9976b55 This is a start at making the libc++ test suite friendlier to the -fnoexceptions flag. Although this is not a complete solution, it does reduce the number of test failures on OS X from 467 to 128 on OS X when -fno-exceptions is enabled, and does not impact the number of failures at all when -fno-exceptions is not enabled. The bulk of this code was donated anonymously. by Howard Hinnant · 12 years ago
  27. 06d8bf6 Test cleanup with respect to use of deprecated tmpnam function. Also Windows port for these tests to use _tempnam. The bulk of this patch was donated anonymously. I've tested it on OS X and accept responsibility for it. If I've broken anyone's platform by switching from tmpnam to mktemp for the generation of temporary file names, just let me know. Should be easy to fix in test/support/platform_support.h by Howard Hinnant · 12 years ago
  28. bdea27b Fix bug in test; found by AddressSanitizer by Marshall Clow · 12 years ago
  29. c19fe86 Fix bug in test; found by AddressSanitizer by Marshall Clow · 12 years ago
  30. dece7fe Removed raw references to __APPLE__; now just check to see if it is defined. by Marshall Clow · 12 years ago
  31. a22d2ad Removed raw references to _WIN32; now just check to see if it is defined. by Marshall Clow · 12 years ago
  32. 6319f14 Parsing floating point numbers with very long precision was broken, and this patch fixes it. This fixes http://llvm.org/bugs/show_bug.cgi?id=15445. by Howard Hinnant · 12 years ago
  33. 76aa2ef Fix a bug in mutex_try_to_lock. This was previously trying to unlock a mutex that it didn't own, causing an assertion failure in mutex.cpp. The issue was that the unique_lock went out of scope, releasing the lock on m, then m.unlock() was called on an already-unlocked mutex. by David Chisnall · 12 years ago
  34. 3bc6a98 [tests] Add support for a link_flags lit parameter. by Daniel Dunbar · 12 years ago
  35. 6b875ef [tests] Another batch of timeout increases. by Daniel Dunbar · 12 years ago
  36. 8eba413 [tests] Another batch of timeout increases. by Daniel Dunbar · 12 years ago
  37. 1608b64 [tests] Add back stdc macros I accidentally refactored out. by Daniel Dunbar · 12 years ago
  38. fe14b97 [tests] Increase a bunch of wait limits. by Daniel Dunbar · 12 years ago
  39. 66a48c5 Give a lot more timing latitude to some of the timing tests. Busy buildbots are hitting the timing limits too often. by Howard Hinnant · 12 years ago
  40. 7fa0ca7 [tests] Infer the cxx_under_test (as clang++). by Daniel Dunbar · 12 years ago
  41. 88dec1e [tests] Change test default to run against locally built library. by Daniel Dunbar · 12 years ago
  42. 6b8b992 [tests] Enable use_system_lib support on Linux. by Daniel Dunbar · 12 years ago
  43. cedb7fc [tests] One last batch of XFAILs, for tests using new symbols added to libc++. by Daniel Dunbar · 12 years ago
  44. 5f4841f [tests] Accept XFAIL arguments that match any part of a feature. by Daniel Dunbar · 12 years ago
  45. 43807c2 [tests] XFAIL some locale tests that don't seem to work on any Darwin. by Daniel Dunbar · 12 years ago
  46. 4cceb7a [tests] If no explicit target triple is given, try to infer it. by Daniel Dunbar · 12 years ago
  47. 8b9eee3 [tests] Mark another stream input expected failure (with system libc++). by Daniel Dunbar · 12 years ago
  48. 548d392 [tests] Mark another stream input expected failure (with system libc++). by Daniel Dunbar · 12 years ago
  49. c8e1889 [tests] Mark some string.conversions expected failures (with system libc++). by Daniel Dunbar · 12 years ago
  50. edfb053 [tests] XFAIL a few things that require libc (?) support missing on Darwin. by Daniel Dunbar · 12 years ago
  51. aac8dd8 [tests] Mark some istream.unformatted expected failures (with system libc++). by Daniel Dunbar · 12 years ago
  52. a5b5196 [tests] Add an available feature that combines the triple and use_system_lib. by Daniel Dunbar · 12 years ago
  53. 81d1ef7 [tests] Add support for REQUIRES and XFAIL lines in libc++ tests. by Daniel Dunbar · 12 years ago
  54. cccf255 [tests] Add a 'use_system_lib' parameter. by Daniel Dunbar · 12 years ago
  55. 5ce391e Make a few tests optimization-proof. These tests were failing under -O3 because the optimizer was eliminating the call to new. by Howard Hinnant · 12 years ago
  56. b05a556 Make <cmath> classification macros work with integral types. by Howard Hinnant · 12 years ago
  57. 3e3ae9e Fix string conversions functions to throw out_of_range properly. Fixes http://llvm.org/bugs/show_bug.cgi?id=14919. by Howard Hinnant · 12 years ago
  58. b4ebb0e Michael van der Westhuizen: Improve support for testing on Linux. Fixes http://llvm.org/bugs/show_bug.cgi?id=14892. by Howard Hinnant · 12 years ago
  59. 750039f Michael van der Westhuizen: Patches for Linux. Fixes http://llvm.org/bugs/show_bug.cgi?id=14648. by Howard Hinnant · 12 years ago
  60. f619e23 Fix exception safety bug in vector::push_back by Howard Hinnant · 12 years ago
  61. 304c31b Made test output iterators have value_type of 'void'; matches ones in library by Marshall Clow · 12 years ago
  62. 83e2c4d Move common header files into a 'support' directory; make 'testit' include -I to that directory; rename 'iterators.h' to 'iterator_test.h'; remove hard-coded paths to include files from more than 350 source files by Marshall Clow · 12 years ago
  63. 6ae4705 atomic_bool was missing (just a typedef to atomic<bool>). by Howard Hinnant · 12 years ago
  64. 8226d0b ...and then there was one. Only one copy of 'iterators.h' in the test tree for libc++ by Marshall Clow · 12 years ago
  65. 239e341 Removed another copy of 'iterators.h' files in libcxx/test by Marshall Clow · 12 years ago
  66. ba1920f Removed several more different 'iterators.h' files in libcxx/test by Marshall Clow · 12 years ago
  67. 002a984 Removed 7 (of 8) different 'iterators.h' files in test/localization by Marshall Clow · 12 years ago
  68. 352bd3a Klaas de Vries: Fix bug in libc++'s std::string::find_first_not_of. by Howard Hinnant · 12 years ago
  69. 3793a7d Test case for http://llvm.org/bugs/show_bug.cgi?id=14670. by Howard Hinnant · 12 years ago
  70. a46482e Added static_assert to std::get<N>(std::array) calls to catch "out of bounds" calls by Marshall Clow · 12 years ago
  71. 0a69fa1 Zhang Xiongpang: Add definitions for const data members. Fixes http://llvm.org/bugs/show_bug.cgi?id=14585. by Howard Hinnant · 12 years ago
  72. 7fa77a7 Modify testit to use the local headers and lib. Thanks go to Jeffrey Yasskin. by Howard Hinnant · 12 years ago
  73. af01e70 tests/lit: Change test default parameters to assume local build. by Daniel Dunbar · 12 years ago
  74. 2d3f4ee Add overflow check to tanh(complex) and reduce to finite answer. Fixes http://llvm.org/bugs/show_bug.cgi?id=13874 by Howard Hinnant · 12 years ago
  75. 6886dd1 Loosen up the timing requirements on 4 more tests. by Howard Hinnant · 12 years ago
  76. 069bdd5 Andrew Morrow: There are two tests under test/utilities/memory that heap allocate two by Howard Hinnant · 12 years ago
  77. 63b2f4f Andrew Morrow: The attached patch updates the lit.config for libc++ unit tests so by Howard Hinnant · 12 years ago
  78. 6d39f9f Andrew Morrow: This patch fixes by Howard Hinnant · 12 years ago
  79. 5fec82d Implement [util.smartptr.shared.atomic]. This is the last unimplemented by Howard Hinnant · 12 years ago
  80. ca8eb83 <algorithm> no longer needs to include <cstdlib>, but can get away with just <cstddef>. This was brought to my attention by Salvatore Benedetto in his port to a bare-metal coretex-m3. This exposed two test bugs where an explicit #include <cstdlib> was needed. by Howard Hinnant · 12 years ago
  81. 499c61f noexcept and constexpr applied to <mutex>. by Howard Hinnant · 12 years ago
  82. f57bd56 noexcept and constexpr applied to <ios>. by Howard Hinnant · 12 years ago
  83. 410f2de constexpr applied to <complex>. by Howard Hinnant · 12 years ago
  84. fe4c9dd Relax the tolerances on some timing tests. by Howard Hinnant · 12 years ago
  85. d06a640 noexcept applied to <iterator>. by Howard Hinnant · 12 years ago
  86. 08bce17 constexpr applied to <array>. by Howard Hinnant · 12 years ago
  87. c425307 Relax the complete-type checks that are happening under __invokable<Fp, Args...> to only check Fp, and not Args... . This should be sufficient to give the desired high quality diagnostics under both bind and function. And this allows a test reported by Rich E on cfe-dev to pass. Tracked by <rdar://problem/11880602>. by Howard Hinnant · 12 years ago
  88. 473f838 Applied constexpr to <chrono>. by Howard Hinnant · 12 years ago
  89. 1ca2367 Fixed a bug in wstring_convert concerning zero-length inputs. Thanks to Jonathan Coxhead for reporting this bug. by Howard Hinnant · 12 years ago
  90. d586248 Add test for self-referencing emplace test. by Howard Hinnant · 12 years ago
  91. 90d8723 Apply constexpr to <bitset>. by Howard Hinnant · 12 years ago
  92. 5394c1e Give tuple a constexpr default constructor. by Howard Hinnant · 12 years ago
  93. 71499ad Add noexcept test for offsetof macro per [support.types]/p4. by Howard Hinnant · 12 years ago
  94. 7a44515 This commit establishes a new bucket_count policy in the unordered containers: The policy now allows a power-of-2 number of buckets to be requested (and that request honored) by the client. And if the number of buckets is set to a power of 2, then the constraint of the hash to the number of buckets uses & instead of %. If the client does not specify a number of buckets, then the policy remains unchanged: a prime number of buckets is selected. The growth policy is that the number of buckets is roughly doubled when needed. While growing, either the prime, or the power-of-2 strategy will be preserved. There is a small run time cost for putting in this switch. For very cheap hash functions, e.g. identity for int, the cost can be as high as 18%. However with more typical use cases, e.g. strings, the cost is in the noise level. I've measured cases with very cheap hash functions (int) that using a power-of-2 number of buckets can make look up about twice as fast. However I've also noted that a power-of-2 number of buckets is more susceptible to accidental catastrophic collisions. Though I've also noted that accidental catastrophic collisions are also possible when using a prime number of buckets (but seems far less likely). In short, this patch adds an extra tuning knob for those clients trying to get the last bit of performance squeezed out of their hash containers. Casual users of the hash containers will not notice the introduction of this tuning knob. Those clients who swear by power-of-2 hash containers can now opt-in to that strategy. Clients who prefer a prime number of buckets can continue as they have. by Howard Hinnant · 12 years ago
  95. caee2b0 Fix a few testsuite bugs involving trailing null (or lack thereof) in strstream. by Howard Hinnant · 12 years ago
  96. 635ce1d The rules for emplace in map, multimap, unordered_map and unordered_multimap changed a while back and I'm just now updating to these new rules. In a nutshell, you've got to know you're emplacing to a pair and use one of pair's constructors. I made one extension: If you want to emplace the key and default construct the mapped_type, you can just emplace(key), as opposed to emplace(piecewise_construct, forward_as_tuple(key), forward_as_tuple()). by Howard Hinnant · 12 years ago
  97. 9efdc0b libc++: Add some missing #includes to atomics tests. libc++ doesn't need these by Richard Smith · 13 years ago
  98. d3eca75 Fix the remaining atomic tests, all of which were wrong for the case where a by David Chisnall · 13 years ago
  99. 1ee87fa Fix test cases that were trying to make atomic things that are not trivially copyable. by David Chisnall · 13 years ago
  100. 8efd3da Update <random> with constexpr support. Patch contributed by Jonathan Sauer. by Howard Hinnant · 13 years ago