Commit Graph

1187 Commits

Author SHA1 Message Date
Howard Hinnant 12bfc4fef1 Peter Collingbourne: Fix warnings when compiling with -DNDEBUG.
llvm-svn: 191148
2013-09-21 21:26:37 +00:00
Howard Hinnant 7a828034c6 Peter Collingbourne: If a pointer is passed as the third argument of the (iterator,
iterator, allocator) constructor with the intention of it being
implicitly converted to the allocator type, it is possible for overload
resolution to favour the (iterator, iterator, enable_if) constructor.
Eliminate this possibility by moving the enable_if to one of the
existing arguments and removing the third argument.

llvm-svn: 191145
2013-09-21 21:13:54 +00:00
Howard Hinnant ff29d538ea Apply LWG 2048. It is amazing to me that this actually works, but the existing tests confirm that it does. c++1y status page now showing libc++ is complete for c++1y modulo dynarray issues.
llvm-svn: 191142
2013-09-21 19:25:37 +00:00
Howard Hinnant f13cf89df2 Apply LWG 2021. This is only a documentation change. Also bringing c++1y status page up to date.
llvm-svn: 191141
2013-09-21 18:17:23 +00:00
Howard Hinnant b76e6a95a9 Apply LWG 2017. This is a only a documentation change.
llvm-svn: 191140
2013-09-21 17:58:58 +00:00
Howard Hinnant ead6f1699d N3659: Shared locking in C++ Revision 2, c++1y only
llvm-svn: 191127
2013-09-21 01:49:28 +00:00
Howard Hinnant b1c82cd090 David Chisnall: macro protect 'test' in __has_pointer_type_imp.
llvm-svn: 191126
2013-09-21 01:45:05 +00:00
Joerg Sonnenberger 8092c957d2 Fix typo.
llvm-svn: 190857
2013-09-17 08:46:53 +00:00
Howard Hinnant 5f878d4bd2 G M: Restore the ability for libcxx to compile again on mingw 64.
llvm-svn: 190837
2013-09-17 01:34:47 +00:00
Howard Hinnant 3b2d7ee18c Marshall Clow: LWG Issue 2056: future_errc enums start with value 0 (invalid value for broken_promise).
llvm-svn: 190756
2013-09-14 18:20:10 +00:00
Marshall Clow a369cb6280 LWG Issue 2210 (Part #7): vector and vector<bool>
llvm-svn: 190736
2013-09-14 00:47:59 +00:00
Howard Hinnant 84f996fb2e G M: Make shared_ptr a little more gentle for some compilers. No impact on clang.
llvm-svn: 190732
2013-09-13 23:56:00 +00:00
Howard Hinnant f35fc7ad74 G M: Make valarray a little more forgiving to compilers not quite so gifted. This has no impact on clang.
llvm-svn: 190731
2013-09-13 23:27:42 +00:00
Marshall Clow 9a08837ba3 Fix link to dynarray issue
llvm-svn: 190707
2013-09-13 17:32:32 +00:00
Marshall Clow 63d233b6ce Update status for <dynarray>
llvm-svn: 190700
2013-09-13 15:37:11 +00:00
Marshall Clow ef6f1151b0 Initial implementation of <dynarray>. No allocator support pending resolution of LWG #2235; no stack allocation pending compiler support
llvm-svn: 190697
2013-09-13 15:22:55 +00:00
Marshall Clow b387ea89a6 Test for 'bad_array_length'; got left out of initial commit
llvm-svn: 190614
2013-09-12 17:01:38 +00:00
Marshall Clow 3cd37e6456 LWG Issue 2210 (Part #6): unordered_map and unordered_multimap
llvm-svn: 190576
2013-09-12 03:00:31 +00:00
Marshall Clow 50c003b577 Implement uses-allocator construction
llvm-svn: 190571
2013-09-12 02:11:16 +00:00
Howard Hinnant 872ac4b5f0 A collection of minor type-o fixes. The first two aren't testable, but all tests pass with them. I stumbled across them while experimenting with a std::move that checks its argument for non-const. The third corrects a test that is currently failing.
llvm-svn: 190563
2013-09-12 00:10:44 +00:00
Marshall Clow 6e8ebb2ce9 Adding bad_array_length to libc++
llvm-svn: 190478
2013-09-11 01:38:42 +00:00
Marshall Clow fbc317d480 LWG Issue #2210 Part 5 - map/multimap; no, really - the last one was set/multiset. THIS is map/multimap
llvm-svn: 190474
2013-09-11 01:15:47 +00:00
Marshall Clow 0a55d17bcd LWG Issue #2210 Part 4 - map/multimap
llvm-svn: 190454
2013-09-11 00:06:45 +00:00
Marshall Clow f1b6d1b538 Update synopsis for list/forward_list/deque to match the allocator style of existing comment. No code change
llvm-svn: 190320
2013-09-09 18:19:45 +00:00
Marshall Clow cdd01917ff Remove a tab that snuck in
llvm-svn: 190283
2013-09-08 21:13:57 +00:00
Howard Hinnant 224ccb38d3 Fix minor type-o in tests.
llvm-svn: 190280
2013-09-08 19:28:51 +00:00
Marshall Clow fb8297668f LWG Issue 2210 (Part #2 & #3): list and forward_list
llvm-svn: 190279
2013-09-08 19:11:51 +00:00
Marshall Clow 630c5e535c LWG Issue 2210 (Part #1): deque
llvm-svn: 190251
2013-09-07 16:16:19 +00:00
Marshall Clow ef44edfde4 N3545: Quoted strings
llvm-svn: 190032
2013-09-05 04:48:45 +00:00
Marshall Clow edc4ee3d15 Mark issues 2103, 2005, 2196 and 2203 as complete. No code changes.
llvm-svn: 190012
2013-09-04 23:48:25 +00:00
Howard Hinnant 6272680119 Evgeniy Stepanov: Add noexcept to ~bad_optional_access() to silence warning during build.
llvm-svn: 189949
2013-09-04 15:21:08 +00:00
Marshall Clow 8bd0ac1135 Updated status for LSG issues 2122, 2169, 2177, 2140 and 2086.
llvm-svn: 189900
2013-09-04 01:06:59 +00:00
Marshall Clow 3e2319e47a Update status of issues 2045, 2050, 2080, 2081, 2083, 2130, 2137 and 2177.
llvm-svn: 189894
2013-09-04 00:18:19 +00:00
Marshall Clow 5155a569d1 LWG Issue 2148: Hashing Enums
llvm-svn: 189831
2013-09-03 17:55:32 +00:00
Marshall Clow 710a902cac Updated the synopsis for weak_ptr<T>::owner_before to match the code. No code changes.
llvm-svn: 189812
2013-09-03 14:37:50 +00:00
Marshall Clow 3e6a3d0c29 Fix a typo in the status for <optional>
llvm-svn: 189809
2013-09-03 14:16:49 +00:00
Marshall Clow cb2e838ed0 Eradicate tabs
llvm-svn: 189808
2013-09-03 14:14:27 +00:00
Howard Hinnant e7d746d8b9 Implement N3672, optional<T>.
llvm-svn: 189772
2013-09-02 20:30:37 +00:00
Michael Gottesman b422ecc7de [cmake] Provide an option to not install the support headers so that the cmake build can match the make build if requested.
llvm-svn: 189739
2013-09-02 07:28:05 +00:00
Michael Gottesman 05c4b550c9 [cmake] Make libcxx standalone compile on Mac OS X.
llvm-svn: 189738
2013-09-02 07:28:03 +00:00
Howard Hinnant dda6f242fb Forgot to svn add the test for r189722.
llvm-svn: 189723
2013-08-31 17:03:02 +00:00
Howard Hinnant 69bc206547 SFINAE out duration converting constructor if the constructor would otherwise cause a ratio compile-time overflow. This fixes LWG 2094.
llvm-svn: 189722
2013-08-31 16:51:56 +00:00
Daniel Dunbar b6b3e50bf3 [tests] Change with_system_lib feature to match what XFAIL lines expect.
- The lit builtin XFAIL handling is more restrictive than what we were
   previously using, and for now I'd rather keep the lit one restrictive.

llvm-svn: 189692
2013-08-30 19:52:12 +00:00
Howard Hinnant 525dc284b4 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.
llvm-svn: 189687
2013-08-30 19:12:42 +00:00
Howard Hinnant d0a4d73623 Xing Xue: Fix type-o. Thanks to C. Bergström for spotting it.
llvm-svn: 189674
2013-08-30 14:42:39 +00:00
Marshall Clow 1e548c72e7 LWG Issue 2128: Implement global cbegin/rbegin/cend/rbegin
llvm-svn: 189634
2013-08-30 01:17:07 +00:00
Howard Hinnant b81766ca23 Glen: Remove unneeded _LIBCPP_ALWAYS_INLINE.
llvm-svn: 189626
2013-08-29 23:50:48 +00:00
Howard Hinnant 9762413621 Xing Xue: Some minor changes for IBM XLC++/AIX.
llvm-svn: 189623
2013-08-29 23:37:50 +00:00
Howard Hinnant 393068bb04 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.
llvm-svn: 189610
2013-08-29 20:56:53 +00:00
Marshall Clow eabb87c438 Typo: I wrote "2058" into the status column for issue 2058 instead of "Complete"
llvm-svn: 189602
2013-08-29 19:03:01 +00:00