summaryrefslogtreecommitdiffstats
path: root/libcxx/www
Commit message (Collapse)AuthorAgeFilesLines
...
* SFINAE out duration converting constructor if the constructor would ↵Howard Hinnant2013-08-311-1/+1
| | | | | | otherwise cause a ratio compile-time overflow. This fixes LWG 2094. llvm-svn: 189722
* is_destructible for function types was mistakenly returning true instead of ↵Howard Hinnant2013-08-301-1/+1
| | | | | | 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
* LWG Issue 2128: Implement global cbegin/rbegin/cend/rbeginMarshall Clow2013-08-301-1/+1
| | | | llvm-svn: 189634
* Typo: I wrote "2058" into the status column for issue 2058 instead of "Complete"Marshall Clow2013-08-291-1/+1
| | | | llvm-svn: 189602
* Mark LWG issues 2109, 222, 2058, 2091 and 2092 as complete. No changes to ↵Marshall Clow2013-08-291-5/+5
| | | | | | libc++ code. llvm-svn: 189601
* Mark issues 2147, 2149, 2163, 2172, 2098 and 2177 as complete. No code ↵Marshall Clow2013-08-291-6/+6
| | | | | | changes to libc++ llvm-svn: 189586
* Marked #2163 as complete in previous commit instead of #2162. Corrected.Marshall Clow2013-08-271-2/+2
| | | | llvm-svn: 189401
* LWG Issue 2162: mark allocator_traits::maxsize as noexceptMarshall Clow2013-08-271-1/+1
| | | | llvm-svn: 189399
* LWG issues 2174/5/6 - mark wstring_convert::converted as noexcept, and make ↵Marshall Clow2013-08-271-3/+3
| | | | | | (some of) the constructors for wstring_convert and wbuffer_convert as explicit. Add configuration macro _LIBCPP_EXPLICIT_AFTER_CXX11 llvm-svn: 189398
* Mark LWG issues 2190, 2200, and 2211 as done. No changes needed to libc++.Marshall Clow2013-08-271-3/+3
| | | | llvm-svn: 189359
* Update synopsis in <locale> to match LWG Issue 2229. No code changeMarshall Clow2013-08-271-1/+1
| | | | llvm-svn: 189352
* Implement LWG issue 2061Marshall Clow2013-08-271-1/+1
| | | | llvm-svn: 189345
* Mark LWG issues 2011, 2015, 2033, 2065, 2071, 2102, 2235 as complete b/c ↵Marshall Clow2013-08-261-7/+7
| | | | | | libc++ already fixed them. llvm-svn: 189232
* Rename _LIBCPP_DEBUG2 to _LIBCPP_DEBUG.Howard Hinnant2013-08-231-1/+1
| | | | llvm-svn: 189140
* Mark LWG issues #2083, 2099 and 2105 as complete. No functionality change.Marshall Clow2013-08-221-3/+3
| | | | llvm-svn: 189044
* LWG 2145 - mark constructor for std::error_category as inline and constexpr. ↵Marshall Clow2013-08-211-1/+1
| | | | | | Leave the (existing, out-of-line, non-constexpr) in the dylib for compatibility with existing programs) llvm-svn: 188858
* Updated status of issues #2093, 2144, and 2185Marshall Clow2013-08-201-3/+3
| | | | llvm-svn: 188813
* Updated status and description of issues 2064, 2069 and 2096.Marshall Clow2013-08-201-3/+3
| | | | llvm-svn: 188811
* Updated status of issues #2028, 2047, and 2053.Marshall Clow2013-08-201-3/+3
| | | | llvm-svn: 188810
* Updated status of issues #1214, 2207 and 2209. They were already ↵Marshall Clow2013-08-201-3/+3
| | | | | | implemented, so no functionality change was needed. llvm-svn: 188803
* Added some missing issues to the c++1y status page, and put in hyperlinks ↵Howard Hinnant2013-08-141-22/+42
| | | | | | for the papers. llvm-svn: 188387
* remove CWG papers from list; add link to clang status pageMarshall Clow2013-08-141-14/+14
| | | | llvm-svn: 188383
* Added CWG and SG1 papers to libc++ status pageMarshall Clow2013-08-141-24/+51
| | | | llvm-svn: 188381
* Mark LWG Issue #2110 and #2113 as completed - they were already doneMarshall Clow2013-08-141-2/+2
| | | | llvm-svn: 188378
* Add a deleted assignment operator for basic_ostream; LWG Issue #2067Marshall Clow2013-08-141-1/+1
| | | | llvm-svn: 188375
* Implement LWG Issue #2187 (emplace_back and emplace for vector<bool>)Marshall Clow2013-08-131-1/+1
| | | | llvm-svn: 188333
* Update for N3657 and issue 2010Marshall Clow2013-08-131-2/+2
| | | | llvm-svn: 188321
* Updated issues 2039, 2044, 2197, 2225, and 2231Marshall Clow2013-08-131-6/+6
| | | | llvm-svn: 188294
* Updated Issue 2187Marshall Clow2013-08-131-4/+4
| | | | llvm-svn: 188286
* Removed 'Ready' issues from BristolMarshall Clow2013-08-131-13/+0
| | | | llvm-svn: 188284
* Updated issues 2009 and 2074Marshall Clow2013-08-131-2/+2
| | | | llvm-svn: 188283
* Fix template formatting. No, reallyMarshall Clow2013-08-131-2/+2
| | | | llvm-svn: 188277
* escape some template specsMarshall Clow2013-08-131-1/+1
| | | | llvm-svn: 188276
* Fix case mismatchMarshall Clow2013-08-131-1/+1
| | | | llvm-svn: 188275
* Create a C++14 status pageMarshall Clow2013-08-132-1/+155
| | | | llvm-svn: 188273
* debug mode for unordered_map. Also picked up a missing check and test in ↵Howard Hinnant2013-08-021-1/+1
| | | | | | unordered_multimap. This wraps up debug mode for the unordered containers. llvm-svn: 187659
* Ok, 3 major changes for debug mode in one commit:Howard Hinnant2013-08-021-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. I had been detecting and trapping iterator == and \!= among iterators in different containers as an error. But the trapping itself is actually an error. Consider: #include <iostream> #include <vector> #include <algorithm> template <class C> void display(const C& c) { std::cout << "{"; bool first = true; for (const auto& x : c) { if (\!first) std::cout << ", "; first = false; std::cout << x; } std::cout << "}\n"; } int main() { typedef std::vector<int> V; V v1 = {1, 3, 5}; V v2 = {2, 4, 6}; display(v1); display(v2); V::iterator i = std::find(v1.begin(), v1.end(), 1); V::iterator j = std::find(v2.begin(), v2.end(), 2); if (*i == *j) i = j; // perfectly legal // ... if (i \!= j) // the only way to check v2.push_back(*i); display(v1); display(v2); } It is legal to assign an iterator from one container to another of the same type. This is required to work. One might want to test whether or not such an assignment had been made. The way one performs such a check is using the iterator's ==, \!= operator. This is a logical and necessary function and does not constitute an error. 2. I had a header circular dependence bug when _LIBCPP_DEBUG2 is defined. This caused a problem in several of the libc++ tests. Fixed. 3. There is a serious problem when _LIBCPP_DEBUG2=1 at the moment in that std::basic_string is inoperable. std::basic_string uses __wrap_iterator to implement its iterators. __wrap_iterator has been rigged up in debug mode to support vector. But string hasn't been rigged up yet. This means that one gets false positives when using std::string in debug mode. I've upped std::string's priority in www/debug_mode.html. llvm-svn: 187636
* Debug mode for unordered_multiset. The exercise spotted a few places I had ↵Howard Hinnant2013-07-291-1/+1
| | | | | | | | | | | | | | missed on unordered_set, so I picked those up as well. There are actually two debug modes: 1. -D_LIBCPP_DEBUG2 or -D_LIBCPP_DEBUG2=1 This is a relatively expensive debug mode, but very thorough. This is normally what you want to debug with, but may turn O(1) operations into O(N) operations. 2. -D_LIBCPP_DEBUG2=0 This is "debug lite." Only preconditions that can be checked with O(1) expense are checked. For example range checking on an indexing operation. But not iterator validity. llvm-svn: 187369
* I believe this finishes up debug mode for list. The testing is a little ↵Howard Hinnant2013-04-161-1/+1
| | | | | | weak, but I believe all of the functionality is there. Certainly enough for people to checkout and start beating up on. llvm-svn: 179632
* I believe debug mode for vector<T> (T != bool) is complete. If anyone sees ↵Howard Hinnant2013-03-281-1/+1
| | | | | | anything more they would like to see on it, please let me know. Debug mode is activated by compiling with -D_LIBCPP_DEBUG2=1. Eventually _LIBCPP_DEBUG2 will be renamed to just _LIBCPP_DEBUG. llvm-svn: 178288
* Updated link to Marshall's instructionsMarshall Clow2013-03-141-1/+1
| | | | llvm-svn: 177099
* Some forward-looking and optimistic documentation.Howard Hinnant2013-03-142-0/+157
| | | | llvm-svn: 177093
* Michael van der Westhuizen: correction to the libcxx build instructions when ↵Howard Hinnant2013-02-261-1/+1
| | | | | | built with libcxxrt on Linux. llvm-svn: 176093
* Bruce Mitchener: Minor typo fixes.Howard Hinnant2013-02-153-4/+4
| | | | llvm-svn: 175274
* Michael van der Westhuizen: Update instructions for building on Linux.Howard Hinnant2013-02-081-0/+75
| | | | llvm-svn: 174733
* [CMake] Fix c++ abi library configuration on Linux.Michael J. Spencer2012-12-311-0/+55
| | | | | | | | | | You can now configure from the command line using: -DLIBCXX_CXX_ABI=libsupc++ -DLIBCXX_LIBSUPCXX_INCLUDE_PATHS="path;path Also documents how to build on Linux. llvm-svn: 171316
* Fix type-o.Howard Hinnant2012-11-271-1/+1
| | | | llvm-svn: 168715
* Remove by-chapter breakdown of what is implemented. The chart is now obsolete.Howard Hinnant2012-11-272-3/+1
| | | | llvm-svn: 168713
* Change C++0x references to C++11, Fixes bug #12745Marshall Clow2012-11-141-4/+4
| | | | llvm-svn: 167930
* Update instructions for building and using libc++ on Mac OSHoward Hinnant2012-11-061-27/+18
| | | | llvm-svn: 167490
OpenPOWER on IntegriCloud