Commit Graph

  • 1e1d05121d 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". Howard Hinnant 2013-07-15 18:21:11 +0000
  • 1f96a4df58 A few fixes to tests for Windows port. Howard Hinnant 2013-07-15 18:09:11 +0000
  • ac93d0ebf2 Add macro _LIBCPP_CONSTEXPR_AFTER_CXX11 for functions that have been marked constexpr post C++11 Marshall Clow 2013-07-15 14:57:19 +0000
  • e8029e54f1 Implement n3584 - Addressing Tuples by Type Marshall Clow 2013-07-13 02:54:05 +0000
  • ef7a7b730c Port make_[un]signed tests to platforms where sizeof(wchar_t) == 2. Howard Hinnant 2013-07-11 23:51:05 +0000
  • e840208989 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) Howard Hinnant 2013-07-11 15:32:55 +0000
  • 37c17ed07d Improved tests (and fixed a bug in the tests); thanks to Richard Smith for the suggestion Marshall Clow 2013-07-10 18:01:34 +0000
  • 809e93f7f2 move __save_flags from <random> to <ios> in preparation for reuse; no functionality change Marshall Clow 2013-07-09 20:34:14 +0000
  • 7670f7d1ed 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. Howard Hinnant 2013-07-09 17:29:09 +0000
  • 171771a9f5 War on tabs. Howard Hinnant 2013-07-08 21:06:38 +0000
  • e2735d1df0 Implement n3668 - std::exchange Marshall Clow 2013-07-08 20:54:40 +0000
  • d29bb4b7c4 Implement n3545 for c++14 Marshall Clow 2013-07-08 20:05:31 +0000
  • 0769e6a785 Windows port for __codecvt_utf8<wchar_t>. Howard Hinnant 2013-07-08 19:03:07 +0000
  • d712a59c7f Silence -Wint-to-void-pointer-cast warning in test. Howard Hinnant 2013-07-06 14:41:36 +0000
  • 9b128e06ed Remove implicit conversion from __value_type to value_type in [unordered_][multi]map. This fixes http://llvm.org/bugs/show_bug.cgi?id=16549 Howard Hinnant 2013-07-05 18:06:00 +0000
  • b66e1c3f96 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 Howard Hinnant 2013-07-04 20:59:16 +0000
  • e008d4eecc Simplify comparators of [unordered_][multi]map. This fixes http://llvm.org/bugs/show_bug.cgi?id=16538 Howard Hinnant 2013-07-04 19:46:35 +0000
  • 4dca0440f5 Fix bashism. Joerg Sonnenberger 2013-07-04 15:11:10 +0000
  • 933afa9761 Patch for N3655 (Transformation type traits) with Howard's additions Marshall Clow 2013-07-04 00:10:01 +0000
  • 42e55e932e Commit patch for integer sequences. Suggested by Richard, reworked by Howard, and annotated by me Marshall Clow 2013-07-03 19:20:30 +0000
  • 24ae8f8e5b Matthew Dempsky: Attached patch replaces the type punning with memcpy(), which on x86/x86-64 clang optimizes to direct word accesses anyway. This fixes an unaligned word access in murmurhash/cityhash. Howard Hinnant 2013-07-03 17:39:28 +0000
  • fb5511027b Adorn make_unique with visibility and inline attributes Marshall Clow 2013-07-02 20:06:09 +0000
  • 9a06b9d017 Don't free the C locale on NetBSD. Joerg Sonnenberger 2013-07-02 19:46:18 +0000
  • 4573565de0 Updated CREDITS.TXT Howard Hinnant 2013-07-02 19:00:29 +0000
  • 839ae58c2e Matthew Dempsky: In libc++'s <locale>, there's already dependence on an snprintf_l implementation and all of the char buffers readily have their allocated size available, so we can easily use snprintf_l instead of sprintf_l. Howard Hinnant 2013-07-02 18:42:28 +0000
  • 6a683bfb5f Constrain launch ~ operator to defined bits. Howard Hinnant 2013-07-02 18:01:41 +0000
  • 725ae713f2 Windows support in thread::hardware_concurrency. Howard Hinnant 2013-07-02 17:53:48 +0000
  • dbc8cf059e 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). Howard Hinnant 2013-07-02 17:43:31 +0000
  • eaffd0a8ff XFAIL this test on 10.7 and 10.8 Howard Hinnant 2013-07-01 22:59:14 +0000
  • fd7481e96d Implement n3656 - make_unique. Thanks to Howard for the review and suggestions. Marshall Clow 2013-07-01 18:16:03 +0000
  • 7ec46bc422 Implement n3658 - Compile-time integer sequences Marshall Clow 2013-07-01 16:26:55 +0000
  • 11b87182b0 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 Howard Hinnant 2013-07-01 00:37:50 +0000
  • 099dec1ba0 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 Howard Hinnant 2013-07-01 00:01:51 +0000
  • c05e98660f 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 Howard Hinnant 2013-06-30 19:48:15 +0000
  • 312926eed4 Matthew Dempsky: POSIX defines that the _POSIX_C_SOURCE macros are to be set by user code to specify what version of POSIX the system should provide. If you want to check what version of POSIX is actually available, you're supposed to test _POSIX_VERSION. Howard Hinnant 2013-06-30 00:14:43 +0000
  • 09ca5d49e1 Matthew Dempsky: Same as stdexcept.cpp in libc++abi: we've already computed 'len strlen(msg)', so we can use memcpy() instead of strcpy(). Howard Hinnant 2013-06-29 23:53:20 +0000
  • a9602d56de 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. Howard Hinnant 2013-06-29 23:45:43 +0000
  • f491e51ebd 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 Howard Hinnant 2013-06-29 18:38:17 +0000
  • ab135d7f4e Make cout a little more thread-safe. This fixes http://llvm.org/bugs/show_bug.cgi?id=12158 Howard Hinnant 2013-06-28 21:40:28 +0000
  • c1ecd97f00 Provide missing '{' in parsing extended quoted characters. This fixes http://llvm.org/bugs/show_bug.cgi?id=16135 Howard Hinnant 2013-06-28 20:31:05 +0000
  • e57b7c445b 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 Howard Hinnant 2013-06-28 19:11:23 +0000
  • 918f2a80ab 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 Howard Hinnant 2013-06-28 18:57:30 +0000
  • b9d9fb4a17 Dimitry Andric: Add const to constexpr member functions in order to cope with new C++1y language rules. This silences -Wconstexpr-not-const warnings. Howard Hinnant 2013-06-28 18:09:35 +0000
  • 9dcdcdee25 Implement full support for non-pointer pointers in custom allocators for string. This completes the custom pointer support for the entire library. Howard Hinnant 2013-06-28 16:59:19 +0000
  • 2c39cbe020 Implement full support for non-pointer pointers in custom allocators for vector. Howard Hinnant 2013-06-27 19:35:32 +0000
  • 29f7432ff3 Implement full support for non-pointer pointers in custom allocators for list. Howard Hinnant 2013-06-25 16:08:47 +0000
  • 81381a932f Implement full support for non-pointer pointers in custom allocators for forward_list. Howard Hinnant 2013-06-24 17:17:28 +0000
  • c7a39cf584 Fix typo in assertion message. Reported by Shriramana Sharma. Dmitri Gribenko 2013-06-24 06:15:57 +0000
  • fcd8db7133 Implement full support for non-pointer pointers in custom allocators for deque. Howard Hinnant 2013-06-23 21:17:24 +0000
  • 7a6b7cedcb 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. Howard Hinnant 2013-06-22 15:21:29 +0000
  • 70342b99e2 Implement full support for non-pointer types in custom allocators. This is for the associative containers only. This work still needs to be done on the unordered and sequence containers. Fixes http://llvm.org/bugs/show_bug.cgi?id=15978 Howard Hinnant 2013-06-19 21:29:40 +0000
  • ee749a403c Test case for r183481. Howard Hinnant 2013-06-07 14:24:18 +0000
  • 1dbfe78a2a Creating release candidate final from release_33 branch svn-tags/RELEASE_33 Bill Wendling 2013-06-07 10:53:41 +0000
  • 9360e9f944 Minor bug fix for allowing an extension of const-qualified types in containers. Howard Hinnant 2013-06-07 01:56:37 +0000
  • 827ea67460 Creating release candidate rc3 from release_33 branch Bill Wendling 2013-06-04 04:43:33 +0000
  • 244a6a5a73 Removing 3.3rc3 tag. Bill Wendling 2013-06-04 04:42:22 +0000
  • 701c6772b6 Creating release candidate rc3 from release_33 branch Bill Wendling 2013-06-04 04:25:58 +0000
  • 4129e1fcd3 Creating release candidate rc2 from release_33 branch Bill Wendling 2013-05-23 01:56:37 +0000
  • ddb4e4cbb1 Neglected to remove a debugging comment from last commit. Howard Hinnant 2013-05-21 21:19:35 +0000
  • 8f72d5ce16 Fix a couple of bugs in linear_congruential_engine::seed. Regression test added. Howard Hinnant 2013-05-21 21:05:12 +0000
  • a71a952634 Add NetBSD support. Joerg Sonnenberger 2013-05-17 21:17:34 +0000
  • 67444034ed Create a weak pthread_create reference on NetBSD to not force a dependency on libpthread for code that doesn't use threads itself. Joerg Sonnenberger 2013-05-17 21:16:18 +0000
  • 9e98b34a8c Glen: This patch gets the string conversion functions working on Windows. It also refactors repetitive code in string.cpp do greatly reduce the repetitiveness, increasing maintainability. Howard Hinnant 2013-05-16 17:13:40 +0000
  • 6287c65a03 Remove cv qualifiers from member pointers in the __member_pointer_traits test. This was causing a const-qualified bind result to malfunction. This was a recent regression due to the new use of __member_pointer_traits in restricting the __invokable and __invoke_of tests. Howard Hinnant 2013-05-15 21:49:27 +0000
  • e27e907403 Fixing the MSan/compiler-rt build David Blaikie 2013-05-13 21:53:44 +0000
  • b3585e8226 İsmail Dönmez: Enable quick_exit on linux. Howard Hinnant 2013-05-10 17:36:59 +0000
  • bb3a0acf93 XFAIL this test when using the darwin12 system library. Reviewed by Howard David Dean 2013-05-10 17:25:57 +0000
  • 9f8f524541 Fix incorrect type usage; nice catch by Sebastian Marshall Clow 2013-05-10 00:16:10 +0000
  • be764c946c Don't try to free the C locale. Joerg Sonnenberger 2013-05-09 23:06:35 +0000
  • b30abdd07a Implement n3607: 'equal', 'mismatch', and 'is_permutation' Marshall Clow 2013-05-09 21:14:23 +0000
  • 5328cd307c Initialize codecvt explicitly with the C locale, which might not be 0. Joerg Sonnenberger 2013-05-09 19:00:18 +0000
  • a7f5c1bcd8 Put a 1-character unget buffer into cin. This fixes http://llvm.org/bugs/show_bug.cgi?id=15867 Howard Hinnant 2013-05-08 21:18:42 +0000
  • 66de275be6 Creating release candidate rc1 from release_33 branch Bill Wendling 2013-05-08 09:26:33 +0000
  • efb8f7a4e2 Creating release directory for release_33. Bill Wendling 2013-05-08 09:26:26 +0000
  • ecc9742f27 Constrain __invoke functions more accurately. This fixes http://llvm.org/bugs/show_bug.cgi?id=15861 . Howard Hinnant 2013-05-07 23:40:12 +0000
  • 5f1286f574 Introduce _LIBCPP_STD_VER. This can be set by the client (or the clang driver). Or it will be defaulted. The default is 11 if -std= c++11 or eariler, else it will default to the current year modulo the century. We anticipate it defaulting to 14 for C++14 when the time comes. For now, post-C++11 libcxx implementations should protect themselves with #if _LIBCPP_STD_VER > 11. Howard Hinnant 2013-05-07 20:16:13 +0000
  • dd854b2c4e Mark some tests with XFAIL for Lion and Mountain Lion. Howard Hinnant 2013-05-07 17:37:19 +0000
  • db2b81bf90 Creating the libcxx release 3.3 branch. release_33 Bill Wendling 2013-05-07 00:25:14 +0000
  • 8c23819220 Expose accidentally removed __compressed_pair constructor taking piecewise_construct_t. This fixes http://llvm.org/bugs/show_bug.cgi?id=15918 . Howard Hinnant 2013-05-06 16:58:36 +0000
  • 74f4da7219 Stephan Tolksdorf: fixes the issue in the <atomic> header and adds corresponding tests. I've used macros to fall back to a user-provided default constructor if _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS (though I suspect that there won't be many users defining that macro). Howard Hinnant 2013-05-02 20:18:43 +0000
  • e58bc12f2a The push/pop variant of pragma GCC diagnostic is only supported by Clang and GCC 4.6 and newer, so protect accordingly. Joerg Sonnenberger 2013-05-02 19:34:26 +0000
  • 34cb066fa2 Make it possible to provide special (linker) flags for the thread tests. Use it to build & link against libpthread on NetBSD for tests iff they are testing the thread interface. Joerg Sonnenberger 2013-05-02 19:21:36 +0000
  • 63d8f7e341 Add explicit casts to unsigned char before calling ctype functions. Fixes the value range on platforms with signed char. Joerg Sonnenberger 2013-05-02 19:17:48 +0000
  • 15467189c3 This patch introduces an alternative layout for basic_string which when the string is short, the data pointer will be word-aligned. It can be activated with -D_LIBCPP_ALTERNATE_STRING_LAYOUT. These two different layouts (the default and _LIBCPP_ALTERNATE_STRING_LAYOUT) are not ABI compatible with each other. Once one is chosen for a given platform, it is disruptive to change it. Howard Hinnant 2013-04-30 21:44:48 +0000
  • 867deb8e06 Add entry for myself. Joerg Sonnenberger 2013-04-29 19:55:32 +0000
  • 155f06018e Use protected version of the malloc attribute in case source wants to define malloc as macro. Joerg Sonnenberger 2013-04-29 19:52:08 +0000
  • a9b94f1337 GCC doesn't support __has_attribute. Joerg Sonnenberger 2013-04-27 20:51:42 +0000
  • 912438c272 Use static_cast. Joerg Sonnenberger 2013-04-27 19:13:31 +0000
  • d3b5b6b9f4 Use reinterpret_casts directly in place of C-style casts. Joerg Sonnenberger 2013-04-27 19:12:36 +0000
  • 006ab1e213 Only use Clang pragma when compiling with clang. Joerg Sonnenberger 2013-04-27 19:10:15 +0000
  • df4182153c Fix typos. Joerg Sonnenberger 2013-04-26 09:40:18 +0000
  • a5f0e6c5c1 İsmail Dönmez: Change to mktemp template to make it compatible with Linux. Howard Hinnant 2013-04-25 16:08:55 +0000
  • 05e7d24b3d default_delete needs a static_assert against void types. I had previously thought that sizeof(void) would take care of this. I was wrong. Howard Hinnant 2013-04-24 19:44:26 +0000
  • c5e6aa5f5c Avoid bash specific functionality to work with any POSIX shell implementing $(( )). Joerg Sonnenberger 2013-04-23 19:53:24 +0000
  • f9e75aef34 Change makefile comment to refer to libc++ instead of libcpp. Bob Wilson 2013-04-23 19:26:55 +0000
  • 9493e27c0f PR15820: Use tar instead of rsync to install the headers. Bob Wilson 2013-04-23 18:51:51 +0000
  • c52fb8d7bf PR12597: Remove "chown -R root:wheel" from the makefile. Bob Wilson 2013-04-23 17:30:35 +0000
  • 9c2ce95063 Zero-initialize all mbstate_t in the codecvt tests. Howard Hinnant 2013-04-23 14:09:35 +0000
  • 08dd25303e Modest performance improvement for std::string's operator==. Howard Hinnant 2013-04-22 23:55:13 +0000
  • 5544f7e0c7 Somehow aligned_union got dropped through the cracks. This adds it. Did a drive-by fix of alignment_of while I was in the neighborhood. Howard Hinnant 2013-04-22 19:37:49 +0000