Howard Hinnant
|
8d3e797444
|
Donated anonymously: This enables GCC 4.8.0 to build libc++.
llvm-svn: 173060
|
2013-01-21 17:26:55 +00:00 |
Howard Hinnant
|
2153d69672
|
Fix a race in the construction of future. This fixes http://llvm.org/bugs/show_bug.cgi?id=14934.
llvm-svn: 172456
|
2013-01-14 20:01:24 +00:00 |
Howard Hinnant
|
54d333a601
|
Rename uses of _ and __ because these are getting stepped on by macros from other system code.
llvm-svn: 167038
|
2012-10-30 19:06:59 +00:00 |
Argyrios Kyrtzidis
|
88db3171dd
|
Don't neglect to "return *this".
llvm-svn: 165860
|
2012-10-13 02:03:45 +00:00 |
Howard Hinnant
|
aeb85680fb
|
Dimitry Andric: many visibility fixes. Howard: Much appreciated. Can you send me a patch to CREDITS.TXT?
llvm-svn: 163862
|
2012-09-14 00:39:16 +00:00 |
Howard Hinnant
|
9d772d17b3
|
Apple LWG 2067: 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
|
2012-07-21 19:34:12 +00:00 |
Howard Hinnant
|
a4820bc4d5
|
noexcept applied to <future>.
llvm-svn: 160607
|
2012-07-21 17:46:55 +00:00 |
Howard Hinnant
|
a960edd203
|
Fix memory corruption bug found and fixed by Andrew C. Morrow.
llvm-svn: 157476
|
2012-05-25 15:55:46 +00:00 |
Howard Hinnant
|
75689c1018
|
Fix http://llvm.org/bugs/show_bug.cgi?id=11428. Fix provided by Alberto Ganesh Barbati
llvm-svn: 145698
|
2011-12-02 19:36:40 +00:00 |
Howard Hinnant
|
c003db1fca
|
Further macro protection by replacing _[A-Z] with _[A-Z]p
llvm-svn: 145410
|
2011-11-29 18:15:50 +00:00 |
Howard Hinnant
|
073458b1ab
|
Windows support by Ruben Van Boxem.
llvm-svn: 142235
|
2011-10-17 20:05:10 +00:00 |
Howard Hinnant
|
88410049fa
|
http://llvm.org/bugs/show_bug.cgi?id=10346
llvm-svn: 135045
|
2011-07-13 16:00:50 +00:00 |
Howard Hinnant
|
11af28bdbd
|
Fixing up some ABI issues
llvm-svn: 134639
|
2011-07-07 21:03:52 +00:00 |
Howard Hinnant
|
ce48a1137d
|
_STD -> _VSTD to avoid macro clash on windows
llvm-svn: 134190
|
2011-06-30 21:18:19 +00:00 |
Howard Hinnant
|
ce53420e37
|
Provide names for template and function parameters in forward declarations. The purpose is to aid automated documentation tools.
llvm-svn: 133008
|
2011-06-14 19:58:17 +00:00 |
Howard Hinnant
|
3739fe79e5
|
noexcept for <memory>. I've added a few extension noexcept to: 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
|
2011-05-28 14:41:13 +00:00 |
Howard Hinnant
|
ec0810e1c8
|
I had a giant misunderstanding of what 'synchronizes with' meant in [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
|
2011-05-19 15:05:04 +00:00 |
Howard Hinnant
|
7735ccaf86
|
Supply missing std::qualifier to call.
llvm-svn: 131410
|
2011-05-16 16:20:59 +00:00 |
Howard Hinnant
|
1596c4531b
|
N3189 Observers for the three handler functions
llvm-svn: 120712
|
2010-12-02 16:45:21 +00:00 |
Howard Hinnant
|
92e3718b13
|
Implemented N3194
llvm-svn: 120458
|
2010-11-30 20:23:32 +00:00 |
Howard Hinnant
|
e3120ed1bf
|
N3188 - Revision to N3113: Async Launch Policies (CH 36)
llvm-svn: 120027
|
2010-11-23 18:33:54 +00:00 |
Howard Hinnant
|
3dc6455ff0
|
N3191: C++ Timeout Specification
llvm-svn: 119909
|
2010-11-20 19:16:30 +00:00 |
Howard Hinnant
|
412dbebe1b
|
license change
llvm-svn: 119395
|
2010-11-16 22:09:02 +00:00 |
Howard Hinnant
|
10e4a48a26
|
Convert __thread_local_data to the singleton pattern
llvm-svn: 116500
|
2010-10-14 19:18:04 +00:00 |
Howard Hinnant
|
a3988679f9
|
visibility-decoration.
llvm-svn: 114543
|
2010-09-22 14:16:26 +00:00 |
Howard Hinnant
|
7609c9b665
|
Changed __config to react to all of clang's currently documented has_feature 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
|
2010-09-04 23:28:19 +00:00 |
Howard Hinnant
|
b77c0c03bb
|
[futures.atomic_future] and notify_all_at_thread_exit. This completes the header <future> and all of Chapter 30 (for C++0x enabled compilers).
llvm-svn: 113017
|
2010-09-03 21:46:37 +00:00 |
Howard Hinnant
|
ead85506a7
|
[futures.shared_future]
llvm-svn: 112990
|
2010-09-03 18:39:25 +00:00 |
Howard Hinnant
|
27f000e10b
|
[futures.task] and [futures.async]. Requires variadics and rvalue-ref support.
llvm-svn: 112500
|
2010-08-30 18:46:21 +00:00 |
Howard Hinnant
|
8759d9d4d0
|
[futures.promise]. Depends on rvalue-ref support to work 100%.
llvm-svn: 112388
|
2010-08-28 21:01:06 +00:00 |
Howard Hinnant
|
167fd1084b
|
future continues ...
llvm-svn: 112284
|
2010-08-27 20:10:19 +00:00 |
Howard Hinnant
|
dae3481b28
|
Getting started on <future>
llvm-svn: 112061
|
2010-08-25 17:32:05 +00:00 |
Howard Hinnant
|
5b08a8a432
|
Wiped out some non-ascii characters that snuck into the copyright.
llvm-svn: 103516
|
2010-05-11 21:36:01 +00:00 |
Howard Hinnant
|
3e519524c1
|
libcxx initial import
llvm-svn: 103490
|
2010-05-11 19:42:16 +00:00 |