Commit Graph

  • fbb2b54c17 branch off of libcpp-25 Howard Hinnant 2011-08-01 13:34:00 +0000
  • 8caf423916 Correct misspelling:_LIBCPP_APPLE_STABLE_ABI -> _LIBCPP_STABLE_APPLE_ABI Howard Hinnant 2011-07-31 17:16:32 +0000
  • 8775816ba3 Change how _LIBCPP_HAS_NO_ADVANCED_SFINAE gets set. Howard Hinnant 2011-07-31 17:10:44 +0000
  • 199d0aec1b Fixed PR10507 (http://llvm.org/bugs/show_bug.cgi?id=10507) Howard Hinnant 2011-07-31 17:04:30 +0000
  • 9d7530935d Revert r136547, r136545, and r136542 by removing slist. Chandler Carruth 2011-07-30 21:10:18 +0000
  • a73da5d2ca Revert r136546, which was submitted without review. Chandler Carruth 2011-07-30 21:10:16 +0000
  • da9c0f1fba Fix PR10507. http://llvm.org/bugs/show_bug.cgi?id=10507 Howard Hinnant 2011-07-30 17:40:17 +0000
  • a9ad2ca8bd Synch up with recent changes in trunk Howard Hinnant 2011-07-30 17:35:20 +0000
  • 8ffa5d58e0 Correct misspelling: _LIBCPP_APPLE_STABLE_ABI -> _LIBCPP_STABLE_APPLE_ABI Howard Hinnant 2011-07-30 16:37:03 +0000
  • 791e11cf33 Fix radar 9866843 Howard Hinnant 2011-07-30 16:35:55 +0000
  • 4d933b2b44 Apple branch created Howard Hinnant 2011-07-30 16:28:35 +0000
  • 8f0396e443 Add the missing default argument for the allocator and use a cleaner implementation of previous(). Sean Hunt 2011-07-30 00:47:53 +0000
  • b59b929cc9 Destruct elements of hash tables when removing individual entries from the hash_table. I think this is the correct solution to PR10507, but I'm not sure since this is a little bit cargo-culted. Howard, please review. Sean Hunt 2011-07-30 00:18:12 +0000
  • 70bbcae9b5 Oops. That last commit was from an earlier revision of the file and was more than just a bit broken. This one should compile and run without infinite loops. Sean Hunt 2011-07-30 00:06:52 +0000
  • d50c1c7429 Include an "implementation" if SGI's slist. This was quickly hacked together to get it working with code, and is neither optimal (erase(Iterator, Iterator) calculates the previous iterator twice, rather than calculating the previous iterator of the first one, then advancing it until the second is found) nor complete (splice() was not implemented). Most of the implementation is borrowed from forward_list via using-declarations. Sean Hunt 2011-07-29 23:42:36 +0000
  • 110b8bf57e Explicitly invoke the size_type specialization of max and min. This avoids bugs where, when the allocator's size_type was smaller than int, the multiplication or division would cause integral promotions and, with two different integer types as arguments, deduction of the template arguments would fail. Sean Hunt 2011-07-29 23:31:58 +0000
  • affd9e5d43 Add a new hash class in __gnu_ext for the extension containers. There are two motivations for this. Sean Hunt 2011-07-29 23:31:56 +0000
  • e36a196049 Add two missing members from the extension hash containers. The first is the type name 'data_type', which is specified by the SGI spec as being the correct type name for the mapped type. The second is an overload of insert found in standard containers, taking an iterator as a 'hint' (which we ignore in the standard containers as well). libstdc++'s implementation includes these overloads, and they are needed to make insert_iterator work (which I suspect is the real motivation for including them in the standard containers). Sean Hunt 2011-07-29 23:31:53 +0000
  • 23369ee812 Configure to get along with 2.9 clang Howard Hinnant 2011-07-29 21:35:53 +0000
  • db86663223 Optimizing valarray::operator=(some-valarray-expression) Howard Hinnant 2011-07-27 23:19:59 +0000
  • 9c59d38112 Fix PR10509: http://llvm.org/bugs/show_bug.cgi?id=10509 Howard Hinnant 2011-07-27 19:25:28 +0000
  • d36369d910 Fix PR10510: http://llvm.org/bugs/show_bug.cgi?id=10510 Howard Hinnant 2011-07-27 18:34:06 +0000
  • 4f598034d2 http://llvm.org/bugs/show_bug.cgi?id=10469 Howard Hinnant 2011-07-24 23:59:50 +0000
  • fa06d75e8d Optimization of string::operator< by M.E. O'Neill. Discussion in http://llvm.org/bugs/show_bug.cgi?id=10461 Howard Hinnant 2011-07-24 21:45:06 +0000
  • 2644a7b3da http://llvm.org/bugs/show_bug.cgi?id=10461 Howard Hinnant 2011-07-24 15:07:21 +0000
  • 099084d52f http://llvm.org/bugs/show_bug.cgi?id=10455 Howard Hinnant 2011-07-23 16:14:35 +0000
  • b3296ae5bc Test commit Dave Zarzycki 2011-07-22 17:08:57 +0000
  • bf6666f7a0 Correct test. Howard Hinnant 2011-07-19 01:07:49 +0000
  • 541cb301a1 Adjust two tests to account for a nasty change in copying behavior between C++03 and C++0x and its effect on exceptions, and another two to not test move construction when rvalue references are not available. Sean Hunt 2011-07-18 23:51:25 +0000
  • 13aaf422e4 Make all fstream tests use tmpnam if creating files, rather than hard-coded names. Sean Hunt 2011-07-18 23:51:21 +0000
  • e6440c6fa2 Do a litmus test of using tmpnam to generate safe temporary file names for the tests that open new data files. Sean Hunt 2011-07-18 20:46:16 +0000
  • 737a351850 Given that __underlying_type is now available in clang, implement std::underlying_type. Sean Hunt 2011-07-18 18:37:21 +0000
  • 2d81f3d1f3 Give A an explicitly non-throwing destructor so that B's destructor is itself non-throwing. Since nested_exception's destructor is non-throwing, if B's destructor is not, this causes an error in C++03 mode due to the overriding function having a more lax specification. This did not occur in C++0x mode as A's destructor was implicitly non-throwing. Sean Hunt 2011-07-18 17:07:53 +0000
  • 464aa5cad3 http://llvm.org/bugs/show_bug.cgi?id=10390 Howard Hinnant 2011-07-18 15:51:59 +0000
  • bcbbd4d14f Revert locale for apple back to original design, getting rid of now useless helper *_l functions Howard Hinnant 2011-07-15 14:46:11 +0000
  • 9a2078137f _LIBCXX_STABLE_APPLE_ABI -> _LIBCPP_STABLE_APPLE_ABI Howard Hinnant 2011-07-15 14:25:40 +0000
  • 0e1f6f5856 Tagging 25 svn-tags/libcpp-25 Howard Hinnant 2011-07-15 13:52:54 +0000
  • a78264f872 Fix wchar tests by not assuming that tm is complete and by using the proper va_list time on non-darwin platforms. Sean Hunt 2011-07-15 05:44:47 +0000
  • f3907e6cc0 Reapply 135035 with proper conditional inclusion, hopefully solving issues with it. Sean Hunt 2011-07-15 05:40:33 +0000
  • 912012e949 http://llvm.org/bugs/show_bug.cgi?id=10353 Howard Hinnant 2011-07-14 01:34:46 +0000
  • 22ba71b8ef http://llvm.org/bugs/show_bug.cgi?id=10346 Howard Hinnant 2011-07-13 16:00:50 +0000
  • 8d75632ad0 Reverted to 134947. Once I got into it, I discovered there were too many problems to fix in 135035. Howard Hinnant 2011-07-13 15:48:16 +0000
  • c97da3a590 Implement the __nolocale functions properly so that they will work on all platforms. Unfortunately a lot of this remains conditionally compiled so as not to break Apple's ABI. Sean Hunt 2011-07-13 06:40:50 +0000
  • 0389c53f44 Make sure that __time_put constructors properly on non-Apple platforms. Sean Hunt 2011-07-12 00:55:04 +0000
  • 66f2641ac9 Toralf Niebuhr: This is just a tiny patch fixing some small (probably copy & paste) errors. Howard Hinnant 2011-07-09 19:47:01 +0000
  • 2bf1c08510 Make vector<bool>::reference and const_reference public Howard Hinnant 2011-07-09 15:50:42 +0000
  • 6f0342cf2e Don't assume that wctype produces a nice mask on all platforms. On glibc, for instance, it's a const char *. Sean Hunt 2011-07-09 03:40:04 +0000
  • e59f724f79 Conditionally wrap the changes from r134781. Sean Hunt 2011-07-09 01:09:31 +0000
  • 62a6ac33a2 Implement generalized table lookups for upper, lower, and character traits. Sean Hunt 2011-07-09 00:56:23 +0000
  • 11f376d956 libcpp-24 svn-tags/libcpp-24 Nick Kledzik 2011-07-08 19:51:27 +0000
  • 043fe1d931 provide ~future_error() definition Howard Hinnant 2011-07-08 00:04:40 +0000
  • cb05a0801a Fix typo Sean Hunt 2011-07-07 22:45:07 +0000
  • ac6de546bd Fixing up some ABI issues Howard Hinnant 2011-07-07 21:03:52 +0000
  • 12c3d374a5 <inttypes.h> does not necessarily include <stdint.h>. Accordingly, do not test for this. Sean Hunt 2011-07-06 20:52:28 +0000
  • 9f66bffdbe Fix uninitialized loop counter. http://llvm.org/bugs/show_bug.cgi?id=10278 Howard Hinnant 2011-07-05 14:14:17 +0000
  • 3c8894b078 Make the default Makefile less destructive: John McCall Howard Hinnant 2011-07-04 14:12:27 +0000
  • f03c3b4612 http://llvm.org/bugs/show_bug.cgi?id=10248 Howard Hinnant 2011-07-02 20:33:23 +0000
  • 90d7785eba http://llvm.org/bugs/show_bug.cgi?id=10250 Howard Hinnant 2011-07-02 18:22:36 +0000
  • 74248888ab Changed constraints on pair and tuple constructors from is_convertible to is_constructible. Howard Hinnant 2011-07-01 20:12:51 +0000
  • 61aa6013c3 Correct for new rules regarding implicitly deleted special members. http://llvm.org/bugs/show_bug.cgi?id=10191 Howard Hinnant 2011-07-01 19:24:36 +0000
  • 0949eedbd6 _STD -> _VSTD to avoid macro clash on windows Howard Hinnant 2011-06-30 21:18:19 +0000
  • d318d49e5c Patch by Petteri Räty, http://llvm.org/bugs/show_bug.cgi?id=8992 Howard Hinnant 2011-06-30 14:21:55 +0000
  • a2a08b43ee test for pair piecewise construction Howard Hinnant 2011-06-22 23:51:19 +0000
  • 35d2fcfc8e Teach libc++ about the addressof() overloads it needs to work with Objective-C Automatic Reference Counting, where Objective-C object pointers can have several different qualifiers (__strong, __weak, __autoreleasing, __unsafe_unretained). These addressof() overloads are only provided in ARC mode, and the __weak variant is conditionalized on having weak-reference support in the ARC runtime. Douglas Gregor 2011-06-22 22:17:44 +0000
  • f5d76a7afc Add instructions for -U__STRICT_ANSI__ for Mac OS 10.6 Howard Hinnant 2011-06-22 12:13:55 +0000
  • 7604fea08c More fixes: One of my fixes to type_traits earlier today was incorrect, so that is reverted. Recently clang appears to have tightened up its definition of is_convertible and that has caused some failures in [unordered_][multi]map. I've switched to using is_constructible to restablish the desired functionality in [unordered_][multi]map. Specifically, inserting rvalues of move-only types for the keys. Howard Hinnant 2011-06-19 21:45:00 +0000
  • d4b957820c Miscellaneous minor fixes in <type_traits> Howard Hinnant 2011-06-19 19:12:59 +0000
  • 2b1b2d40d7 Provide names for template and function parameters in forward declarations. The purpose is to aid automated documentation tools. Howard Hinnant 2011-06-14 19:58:17 +0000
  • 8f5f2563aa more Apple build system tweaks Nick Kledzik 2011-06-09 23:31:35 +0000
  • e06f0c4111 more Apple build system tweaks svn-tags/libcpp-23.1 Nick Kledzik 2011-06-09 23:30:26 +0000
  • 2bdb250fe8 libcpp-23.1 Nick Kledzik 2011-06-09 22:18:19 +0000
  • c7c3891199 Update CREDITS.TXT Howard Hinnant 2011-06-09 16:53:33 +0000
  • c28dbeee52 Move nullptr_t to unversioned namespace: Sean Hunt Howard Hinnant 2011-06-05 13:00:46 +0000
  • 58cd8231d8 noexcept for <stack>. This completes noexcept for Chapter 23 [containers]. Howard Hinnant 2011-06-04 22:09:19 +0000
  • 6a09441022 noexcept for <queue>. Howard Hinnant 2011-06-04 21:32:33 +0000
  • 04dae1df22 noexcept for <unordered_set>. Howard Hinnant 2011-06-04 20:18:37 +0000
  • 5f2f14c5d2 noexcept for <unordered_map>. Howard Hinnant 2011-06-04 18:54:24 +0000
  • 8b53768dac Made more implementation details of [multi]map/set noexcept. Howard Hinnant 2011-06-04 17:10:24 +0000
  • b2e2a8f6f3 noexcept for <set>. Plus a few fixes to noexcept for <map>. Howard Hinnant 2011-06-04 15:22:34 +0000
  • 7686add61e noexcept for <map>. Howard Hinnant 2011-06-04 14:31:57 +0000
  • d1d27a4afa noexcept for <vector>. This also includes installing move_if_noexcept() into vector. Howard Hinnant 2011-06-03 19:40:40 +0000
  • 53f7d4cc62 Bring noexcept for <string> inline with other containers. Howard Hinnant 2011-06-03 18:40:47 +0000
  • c560727d5e noexcept for <list>. Howard Hinnant 2011-06-03 17:30:28 +0000
  • b965fed10b noexcept for <forward_list>. Howard Hinnant 2011-06-03 16:20:53 +0000
  • 009b2c4583 After sleeping on it I've decided that all special members that can be noexcept, should be declared so. The client has the traits to detect and branch on this information, and it is often an important optimization. Give deque() a noexcept. Add test for deque default constructor and deque destructor. Howard Hinnant 2011-06-03 15:16:49 +0000
  • 93f2764b16 Add noexcept tests for deque. Howard Hinnant 2011-06-03 01:46:22 +0000
  • 18884f4e9f Second try at getting noexcept on move and swap for deque. I changed std::alloctor to propagate_on_container_move_assignment so as to make deque<T> move assignment noexcept. What we really need is a compile-time switch that says an allocator always compares equal. Howard Hinnant 2011-06-02 21:38:57 +0000
  • 0a612b0891 I've become quite disatsified with the lack of noexcept specifications on container move construction, move assignment operator and swap. Without proper decoration on at least move construction, vectors of containers will have unacceptable performance. Here's the fix for deque. Howard Hinnant 2011-06-02 20:00:14 +0000
  • 8790cabd86 noexcept for forward_list. Howard Hinnant 2011-06-02 16:44:28 +0000
  • a12beb35e5 noexcept for deque. Howard Hinnant 2011-06-02 16:10:22 +0000
  • aabf28721b Experimental support for a meaningful __is_swappable<T>::value. This does not appear to be strictly needed for correct functioning of the library. If it causes any problems, I'd rather pull it sooner rather than later. Howard Hinnant 2011-06-01 19:59:32 +0000
  • d737382dfd Turning on cxx_nullptr exposed a latent bug in is_function, causing nullptr to wrongly classify as a function. Fixed. Howard Hinnant 2011-06-01 17:25:11 +0000
  • 083ba5f5ca I've seen this question enough times to know that it should be fixed: http://stackoverflow.com/questions/6193734/implicit-conversions-with-stdfunction Howard Hinnant 2011-05-31 21:45:26 +0000
  • f0562af9dd noexcept for <array>. Howard Hinnant 2011-05-31 21:06:33 +0000
  • 20eda8b563 Upgrade <ratio> to use template aliases when available. Howard Hinnant 2011-05-31 16:55:36 +0000
  • c983454d30 noexcept for Chapter 22 [localization]. Howard Hinnant 2011-05-31 15:34:58 +0000
  • c26fd8061e Add _ATTRIBUTE macro for gcc: Justin Hibbits Howard Hinnant 2011-05-31 13:13:49 +0000
  • a6119a86c5 noexcept for Chapter 21 [strings]. Howard Hinnant 2011-05-29 19:57:12 +0000
  • d5fed03778 http://llvm.org/bugs/show_bug.cgi?id=10045 . Please review, I have not tested this on linux. Howard Hinnant 2011-05-29 13:57:49 +0000
  • ad1a5cc5f0 minor documentation update Howard Hinnant 2011-05-29 13:53:56 +0000