summaryrefslogtreecommitdiffstats
path: root/libcxx/include/future
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix a race in the construction of future. This fixes ↵Howard Hinnant2013-01-141-1/+5
| | | | | | http://llvm.org/bugs/show_bug.cgi?id=14934. llvm-svn: 172456
* Rename uses of _ and __ because these are getting stepped on by macros from ↵Howard Hinnant2012-10-301-1/+1
| | | | | | other system code. llvm-svn: 167038
* Don't neglect to "return *this".Argyrios Kyrtzidis2012-10-131-0/+1
| | | | llvm-svn: 165860
* Dimitry Andric: many visibility fixes. Howard: Much appreciated. Can you ↵Howard Hinnant2012-09-141-3/+3
| | | | | | send me a patch to CREDITS.TXT? llvm-svn: 163862
* Apple LWG 2067: ↵Howard Hinnant2012-07-211-6/+6
| | | | | | http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3318.html#2067 . This is the only actionable change that has been made to the C++ draft since C++11. In general it has not been decided exactly how libc++ will track changes made to C++11. New features and design changes will probably be #ifdef'd, especially if they are not backwards compatible. Defects and 'dumb mistakes' are more likely to just be put in. Decisions on telling one from the other will be made on a case by case basis. llvm-svn: 160608
* noexcept applied to <future>.Howard Hinnant2012-07-211-124/+124
| | | | llvm-svn: 160607
* Fix memory corruption bug found and fixed by Andrew C. Morrow.Howard Hinnant2012-05-251-1/+0
| | | | llvm-svn: 157476
* Fix http://llvm.org/bugs/show_bug.cgi?id=11428. Fix provided by Alberto ↵Howard Hinnant2011-12-021-29/+13
| | | | | | Ganesh Barbati llvm-svn: 145698
* Further macro protection by replacing _[A-Z] with _[A-Z]pHoward Hinnant2011-11-291-375/+375
| | | | llvm-svn: 145410
* Windows support by Ruben Van Boxem.Howard Hinnant2011-10-171-0/+2
| | | | llvm-svn: 142235
* http://llvm.org/bugs/show_bug.cgi?id=10346Howard Hinnant2011-07-131-0/+36
| | | | llvm-svn: 135045
* Fixing up some ABI issuesHoward Hinnant2011-07-071-0/+2
| | | | llvm-svn: 134639
* _STD -> _VSTD to avoid macro clash on windowsHoward Hinnant2011-06-301-57/+57
| | | | llvm-svn: 134190
* Provide names for template and function parameters in forward declarations. ↵Howard Hinnant2011-06-141-8/+4
| | | | | | The purpose is to aid automated documentation tools. llvm-svn: 133008
* noexcept for <memory>. I've added a few extension noexcept to: ↵Howard Hinnant2011-05-281-15/+15
| | | | | | allocator_traits<A>::deallocate, allocaate<T>::deallocate, return_temporary_buffer, and default_delete<T>::operator()(T*) const. My rationale was: If a std-dicated noexcept function needs to call another std-defined function, that called function must be noexcept. We're all a little new to noexcept, so things like this are to be expected. Also included fix for broken __is_swappable trait pointed out by Marc Glisse, thanks Marc|. And fixed a test case for is_nothrow_destructible. Destructors are now noexcept by default| llvm-svn: 132261
* I had a giant misunderstanding of what 'synchronizes with' meant in ↵Howard Hinnant2011-05-191-18/+186
| | | | | | [futures.async]/p5. This invalidated the current design of async in <future>. This is a new design, based on my new understanding, which has been confirmed on the lwg mailing list. The summary is that ~future() (and ~shared_future()) will block when they are created from within async, and the thread hasn't finished yet. As part of this work I created two new type traits: __invokable<F, Args...>::value and __invoke_of<F, Args...>::type. These are what result_of<F(Args...)> wanted to be when it grew up, but never will be. __invoke_of is carefully crafted so that it can serve as its own enable_if (type doesn't exist if the signature isn't invokable). All of this work is C++11 only. llvm-svn: 131639
* Supply missing std::qualifier to call.Howard Hinnant2011-05-161-2/+2
| | | | llvm-svn: 131410
* N3189 Observers for the three handler functionsHoward Hinnant2010-12-021-0/+4
| | | | llvm-svn: 120712
* Implemented N3194Howard Hinnant2010-11-301-288/+22
| | | | llvm-svn: 120458
* N3188 - Revision to N3113: Async Launch Policies (CH 36)Howard Hinnant2010-11-231-10/+10
| | | | llvm-svn: 120027
* N3191: C++ Timeout SpecificationHoward Hinnant2010-11-201-1/+1
| | | | llvm-svn: 119909
* license changeHoward Hinnant2010-11-161-2/+2
| | | | llvm-svn: 119395
* Convert __thread_local_data to the singleton patternHoward Hinnant2010-10-141-2/+2
| | | | llvm-svn: 116500
* visibility-decoration.Howard Hinnant2010-09-221-27/+157
| | | | llvm-svn: 114543
* Changed __config to react to all of clang's currently documented has_feature ↵Howard Hinnant2010-09-041-66/+66
| | | | | | flags, and renamed _LIBCPP_MOVE to _LIBCPP_HAS_NO_RVALUE_REFERENCES to be more consistent with the rest of the libc++'s flags, and with clang's nomenclature. llvm-svn: 113086
* [futures.atomic_future] and notify_all_at_thread_exit. This completes the ↵Howard Hinnant2010-09-031-1/+197
| | | | | | header <future> and all of Chapter 30 (for C++0x enabled compilers). llvm-svn: 113017
* [futures.shared_future]Howard Hinnant2010-09-031-2/+196
| | | | llvm-svn: 112990
* [futures.task] and [futures.async]. Requires variadics and rvalue-ref support.Howard Hinnant2010-08-301-16/+692
| | | | llvm-svn: 112500
* [futures.promise]. Depends on rvalue-ref support to work 100%.Howard Hinnant2010-08-281-2/+109
| | | | llvm-svn: 112388
* future continues ...Howard Hinnant2010-08-271-2/+746
| | | | llvm-svn: 112284
* Getting started on <future>Howard Hinnant2010-08-251-0/+28
| | | | llvm-svn: 112061
* Wiped out some non-ascii characters that snuck into the copyright.Howard Hinnant2010-05-111-2/+2
| | | | llvm-svn: 103516
* libcxx initial importHoward Hinnant2010-05-111-0/+500
llvm-svn: 103490
OpenPOWER on IntegriCloud