ec5714f27aAdd the CMakeLists.txt that was missed in r194825
Justin Bogner
2013-11-15 18:34:43 +00:00
c4962b3f44Justin Bogner: This makes the headers available in the build directory, making it easier to use freshly-built clang with freshly-built libc++.
Howard Hinnant
2013-11-15 17:18:57 +00:00
65173fee34This is a followup to r194536, which changed the pair copy constructor to be trivial in C++03, thus making it trivial in both C++03 and C++11.
Howard Hinnant
2013-11-14 22:52:25 +00:00
0c6a583e2aFixed bug in quoted strings implementation. Added test to be sure. Thanks to Peter Sommerlad for the report (and suggested fix)
Marshall Clow
2013-11-14 20:01:38 +00:00
6b7c2aeb00Move <dynarray> into include/experimental, and into the std::experimental namespace, since it's not part of C++14, but of an upcoming TS
Marshall Clow
2013-11-13 22:44:48 +00:00
525a0fb982Add directory for TSes, etc
Marshall Clow
2013-11-13 18:25:56 +00:00
3f81e9eebaThis fixes a very subtle ABI problem concerning the copy constructor of pair, and a couple of pair-like implementation detail types. The C++98/03 and 11 standards all specify that the copy constructor of pair<int, int> is trivial. However as libc++ tracked the draft C++11 standard over the years, this copy constructor became non-trivial, and then just recently was corrected back to trivial for C++11.
Howard Hinnant
2013-11-13 00:39:22 +00:00
a46a0ad9e5Patch from Bruce Mitchener; fixes two typos in comments. No functionality change. PR17843
Marshall Clow
2013-11-11 23:27:19 +00:00
29250b7ec8Tell libc++abi whether or not libc++ has declared bad_array_length.
Howard Hinnant
2013-11-07 17:15:51 +00:00
fe2a561fcaMore duplicate code removal in <locale>. Hoist common parsing code into two templates: num_get::__do_get_signed and num_get::__do_get_unsigned, and make the do_get routines call them. No functionality change.
Marshall Clow
2013-11-07 01:00:50 +00:00
ecc8d7b334Fix an off-by-one error in basic_string::__grow_by, where it would incorrectly throw length_error (instead of bad_alloc) when attempting to resize the string to 'max_size()'. Add tests for resizing to max_size +/-1
Marshall Clow
2013-11-06 14:24:38 +00:00
5ffe591d55Refactor floating point code for num_get::do_get into a template. No functionality change
Marshall Clow
2013-11-05 14:28:52 +00:00
3b3108ec59Better inline marking for __does_policy_contain. Thanks to Chongyu Zhu for the catch
Marshall Clow
2013-11-03 22:06:53 +00:00
d8a8f57387Mark __does_policy_contain as 'inline'. Thanks to Chongyu Zhu for the catch
Marshall Clow
2013-11-03 20:07:47 +00:00
ad2a600c2aFix LWG Issue 2078. Make std::async(policy,...) try multiple policies until one succeeds.
Marshall Clow
2013-11-03 15:43:35 +00:00
76a8670ce4LWG issue 2341; Make the two variants of basic_ostream::seekp and basic_istream::seekg behave consistently; update tests to make sure
Marshall Clow
2013-10-31 22:20:45 +00:00
4259337da2Update status of issues
Marshall Clow
2013-10-23 05:59:18 +00:00
65ccddb341Mark seed_seq default constructor and size() as noexcept. This is implied, but not required by LWG issue 2180
Marshall Clow
2013-10-23 05:56:47 +00:00
0f7afe7b8ePatch by GM: Turn off 'deprecated' warnings when building with MSVC, and add '-Werror=return-type' to catch funtions that aren't returning what they should.
Marshall Clow
2013-10-21 15:56:35 +00:00
33ae2337e2Patch by GM: apparently '__value' (two underscores) is a special name in Visual Studio, so rename the private method in <regex> with that name. GM's patch used '___value' (three underscores), but I changed that to '__regex_traits_value' because I've been burned in the past by identifiers that appear identical but are not.
Marshall Clow
2013-10-21 15:43:25 +00:00
a36451371cPatch from GM: locale.cpp; make implicit conversions to bool explicit, fix some 'unknown pragma' warnings when compiling under MSVC, and don't use the __sso_allocator under windows, b/c MSVC doesn't support aligned-by value parameters
Marshall Clow
2013-10-21 15:07:28 +00:00
8a43fca8edPatch by GM: Making implicit conversion to bool explicit in <ios> and <__locale>
Marshall Clow
2013-10-21 14:41:05 +00:00
0ac5cce17cPatch by GM: Adding MSVC support to __bit_reference
Marshall Clow
2013-10-21 14:29:37 +00:00
aa87532feeAvoid using the name 'bzero' for an enumerator in global scope. <strings.h> might declare this as a function.
Richard Smith
2013-10-21 04:59:37 +00:00
71b52152a9r192075 broke the buildbot at
Howard Hinnant
2013-10-14 18:02:02 +00:00
9de3d4cab3Patch from GM to make more implicit bools explicit since we can't stop MSVC warning about this in headers and to warn is the MSVC default. No functionality change.
Marshall Clow
2013-10-13 01:02:45 +00:00
0f91166ef8Updated status of issues and features
Marshall Clow
2013-10-12 22:57:58 +00:00
16f13a0b84Marked issue 2284 as complete
Marshall Clow
2013-10-07 03:26:42 +00:00
3f433cdb8eApparently, I don't know the difference between 'left' and 'right'. Swap parameters named 'lhs' and 'rhs' so that they correctly refer to the 'left hand side' and 'right hand side' of comparisons. No functionality change. Thanks to Arthur O'Dwyer for pointing this out to me.
Marshall Clow
2013-10-07 02:37:18 +00:00
4a0555a9d4Silence the unused function warning in exception.cpp.
Peter Collingbourne
2013-10-06 22:13:24 +00:00
ece95914acImplement std::exception_ptr under libsupc++.
Peter Collingbourne
2013-10-06 22:13:21 +00:00
d0d308f54bMake it possible to link against libstdc++ as well as libsupc++ with CMake.
Peter Collingbourne
2013-10-06 22:13:19 +00:00
40455c65daEliminate more symbols multiply defined between libsupc++ and libc++.
Peter Collingbourne
2013-10-06 22:13:16 +00:00
ae2b90b86dG M: 1. It changes the temp file handling to use the template and the current directory for windows, matching how it works on other platforms. 2. It re-enables the temp file handling for mingw that regressed.
Howard Hinnant
2013-10-06 21:14:05 +00:00
e064055942G M: Rename local variable from __except to avoid MSVC keyword clash.
Howard Hinnant
2013-10-06 21:00:29 +00:00
35a98a00b3Use _LIBCPP_NEW_DELETE_VIS instead of LIBCPP_FUNC_VIS in src/new.cpp.
Howard Hinnant
2013-10-06 20:53:24 +00:00
2bcdf5e9a0Yaron Keren: Add missing comment.
Howard Hinnant
2013-10-06 19:48:40 +00:00
69bf761909Updated status post-Chicago
Marshall Clow
2013-10-06 07:10:55 +00:00
2faa02fc3dAdd tests making sure that optional<T>s can be compared at compile time; this functionality was enabled by N3789
Marshall Clow
2013-10-05 23:29:16 +00:00
320c80fecfImplement literal suffixes for compled
Marshall Clow
2013-10-05 21:19:49 +00:00
8d9dd7a968Mark namespaces for user defined literals as 'inline'
Marshall Clow
2013-10-05 21:18:32 +00:00
1d927e38d1Implement LWG issue 2275 'forward_as_tuple should be constexpr'
Marshall Clow
2013-10-05 18:46:37 +00:00
520dc52b4aG M: Remove unneeded warnings in buildit that are hindering porting.
Howard Hinnant
2013-10-05 00:13:31 +00:00
adb73b1701G M: Attached is a patch for libcxx's cmake file.
Howard Hinnant
2013-10-05 00:07:35 +00:00
5a8b5783f8G M: The attached patch is for libcxx's new.cpp and __config files. The patch's intent is to make new.cpp compile using MS's cl.exe compiler without changing the meaning of anything for any other compiler.
Howard Hinnant
2013-10-04 23:56:37 +00:00
9844b6796bG M: A small patch to fix a couple of warnings in stdexcept.cpp for cl.exe which does not support #pragma visibility.
Howard Hinnant
2013-10-04 22:12:59 +00:00
1e564246ecG M: Changes all references to "x inline" to "inline x" where x = _libcpp_always_inline or _libcpp_inline_visibility macros.
Howard Hinnant
2013-10-04 22:09:00 +00:00
f677bc4165G M: Fix libcxx's detection of rtti disablement for g++.exe and cl.exe. When RTTI is NOT enabled, _LIBCPP_NO_RTTI is defined.
Howard Hinnant
2013-10-04 21:24:21 +00:00
f7555069abG M: Provides the _LIBCPP_WARNING macro, to be used for MSVC only, since that compiler doesn't support #warning.
Howard Hinnant
2013-10-04 21:14:44 +00:00
66a8fcecd9libc++abi no longer has a cxa_demangle.h header.
Peter Collingbourne
2013-10-03 22:58:36 +00:00
8df0320334Re-add bad_cast and bad_typeid default ctor definitions under libsupc++.
Peter Collingbourne
2013-10-03 22:04:10 +00:00
4c81b00f75Make it possible to run the test suite when built as part of LLVM.
Peter Collingbourne
2013-10-03 21:58:25 +00:00
f7eb5738f6Explicitly specify -Wno-error if LIBCXX_ENABLE_WERROR is false.
Alexey Samsonov
2013-10-02 07:44:19 +00:00
19e7862eb8Remove non-printable chars that snuck in back in July; thanks to Yaron Keren for the catch
Marshall Clow
2013-10-01 13:28:20 +00:00
bd444af850Part 8 of LWG Issue 2210' unordered_set and unordered multiset; this got missed when I went on vacation
Marshall Clow
2013-09-30 21:33:51 +00:00
ff7546e974SCARY/N2913 iterator support between the multi and non-multi versions of the associative and unordered containers. I beleive lack of support for this was accidentally recently introduced (by me) and this is fixing a regression. This time tests are put in to prevent such a regression in the future.
Howard Hinnant
2013-09-30 19:08:22 +00:00
179fa78da3[CMake] Put libcxx-specific module directories to the front of CMAKE_MODULE_PATH.
Alexey Samsonov
2013-09-30 09:10:01 +00:00
9738cafa4fImplement n3789; constexpr support in named function objects
Marshall Clow
2013-09-28 19:06:12 +00:00
6db12cb037Add a set of macros for using the new '[[[deprecated]]' attribute. No code changes (yet)
Marshall Clow
2013-09-28 18:35:31 +00:00
4af78bb10bFixed bad link for n3789; thanks to Chip Davis for the catch
Marshall Clow
2013-09-28 01:52:18 +00:00
42389d214fUpdated my role
Marshall Clow
2013-09-28 01:25:55 +00:00
cb55b18fa9Missed a change that didn't have an issue number 'GB 9'
Marshall Clow
2013-09-27 22:21:17 +00:00
91008752edUpdated table with results from Chicago
Marshall Clow
2013-09-27 22:16:32 +00:00
d1754fb3e9Make the guard for external ABI libraries include the guard for libsupc++ in typeinfo.cpp, bringing it into agreement with exception.cpp. This fixes link errors due to duplicate symbols from this translation unit.
Chandler Carruth
2013-09-25 20:01:44 +00:00
fc910cb9a0Peter Collingbourne: Fix warnings when compiling with -DNDEBUG.
Howard Hinnant
2013-09-21 21:26:37 +00:00
de589f2f8fPeter 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.
Howard Hinnant
2013-09-21 21:13:54 +00:00
dcc6a0bc44Apply 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.
Howard Hinnant
2013-09-21 19:25:37 +00:00
0836f87fb9Apply LWG 2021. This is only a documentation change. Also bringing c++1y status page up to date.
Howard Hinnant
2013-09-21 18:17:23 +00:00
23e470c348Apply LWG 2017. This is a only a documentation change.
Howard Hinnant
2013-09-21 17:58:58 +00:00
ba898e4208N3659: Shared locking in C++ Revision 2, c++1y only
Howard Hinnant
2013-09-21 01:49:28 +00:00
8127758024David Chisnall: macro protect 'test' in __has_pointer_type_imp.
Howard Hinnant
2013-09-21 01:45:05 +00:00
ef5aa93b9cG M: Restore the ability for libcxx to compile again on mingw 64.
Howard Hinnant
2013-09-17 01:34:47 +00:00
cd942f1840Marshall Clow: LWG Issue 2056: future_errc enums start with value 0 (invalid value for broken_promise).
Howard Hinnant
2013-09-14 18:20:10 +00:00
37c4acfe5eG M: Make shared_ptr a little more gentle for some compilers. No impact on clang.
Howard Hinnant
2013-09-13 23:56:00 +00:00
d885143d5cG M: Make valarray a little more forgiving to compilers not quite so gifted. This has no impact on clang.
Howard Hinnant
2013-09-13 23:27:42 +00:00
6ecf7f2d54Fix link to dynarray issue
Marshall Clow
2013-09-13 17:32:32 +00:00
94d3f6b518Update status for <dynarray>
Marshall Clow
2013-09-13 15:37:11 +00:00
27a1c252e3Initial implementation of <dynarray>. No allocator support pending resolution of LWG #2235; no stack allocation pending compiler support
Marshall Clow
2013-09-13 15:22:55 +00:00
f4107076e4Test for 'bad_array_length'; got left out of initial commit
Marshall Clow
2013-09-12 17:01:38 +00:00
599e60d2f7Implement uses-allocator construction
Marshall Clow
2013-09-12 02:11:16 +00:00
f9d2680e19A 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.
Howard Hinnant
2013-09-12 00:10:44 +00:00
7f9f52e6c6Adding bad_array_length to libc++
Marshall Clow
2013-09-11 01:38:42 +00:00
49d596d412LWG Issue #2210 Part 5 - map/multimap; no, really - the last one was set/multiset. THIS is map/multimap
Marshall Clow
2013-09-11 01:15:47 +00:00
e00f53bcfbUpdate synopsis for list/forward_list/deque to match the allocator style of existing comment. No code change
Marshall Clow
2013-09-09 18:19:45 +00:00
6398343bfcRemove a tab that snuck in
Marshall Clow
2013-09-08 21:13:57 +00:00
ac04e1f5bfFix minor type-o in tests.
Howard Hinnant
2013-09-08 19:28:51 +00:00