hanchenye-llvm-project/libcxx/include
David Chisnall 89728139cb Fixes for FreeBSD, including some fairly obvious copy-and-paste errors.
libc++ now mostly works on FreeBSD with libcxxrt and this patch applied to the base system:

http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20110920/e666632c/xlocale-0001.obj

Summary of tests on FreeBSD:


****************************************************
Results for /root/libcxx/test:
using FreeBSD clang version 3.0 (trunk 135360) 20110717
Target: x86_64-unknown-freebsd9.0
Thread model: posix
with -std=c++0x -stdlib=libc++ -I/root/libcxx/include -L/root/libcxx/build/lib
----------------------------------------------------
sections without tests   : 1
sections with failures   : 48
sections without failures: 1015
                       +   ----
total number of sections : 1064
----------------------------------------------------
number of tests failed   : 145
number of tests passed   : 4179
                       +   ----
total number of tests    : 4324
****************************************************

(Many due to this clang version not supporting C++ atomics)

More fixes to follow...

llvm-svn: 140245
2011-09-21 08:39:44 +00:00
..
ext Revert r136547, r136545, and r136542 by removing slist. 2011-07-30 21:10:18 +00:00
__bit_reference http://llvm.org/bugs/show_bug.cgi?id=10248 2011-07-02 20:33:23 +00:00
__config Fixes for FreeBSD, including some fairly obvious copy-and-paste errors. 2011-09-21 08:39:44 +00:00
__debug Doug Gregor pointed out some problems with debug mode enabled in one TU and not another. This patch helps detect those situations and offers improved error messages to help get debug mode enabled in more TU's when it is absolutely necessary to do so. Thanks Doug. 2011-09-16 19:52:23 +00:00
__functional_03 _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
__functional_base _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
__functional_base_03 _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
__hash_table Fixed PR10507 (http://llvm.org/bugs/show_bug.cgi?id=10507) 2011-07-31 17:04:30 +00:00
__locale Fixes for FreeBSD, including some fairly obvious copy-and-paste errors. 2011-09-21 08:39:44 +00:00
__mutex_base _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
__split_buffer Fix const correctness bug in __move_assign. Found and fixed by Ion Gaztañaga. 2011-09-02 20:42:31 +00:00
__sso_allocator license change 2010-11-16 22:09:02 +00:00
__std_stream _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
__tree _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
__tuple Changed constraints on pair and tuple constructors from is_convertible to is_constructible. 2011-07-01 20:12:51 +00:00
__tuple_03 license change 2010-11-16 22:09:02 +00:00
algorithm Initial checkin for debug mode (version 2) 2011-09-14 18:33:51 +00:00
array _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
atomic Provide a more readable error message for <atomic> until it is implemented. 2011-03-31 16:39:39 +00:00
bitset http://llvm.org/bugs/show_bug.cgi?id=10390 2011-07-18 15:51:59 +00:00
cassert license change 2010-11-16 22:09:02 +00:00
ccomplex license change 2010-11-16 22:09:02 +00:00
cctype license change 2010-11-16 22:09:02 +00:00
cerrno Changes to cerrno to protect against the case the ELAST is not defined. 2011-04-10 19:46:55 +00:00
cfenv license change 2010-11-16 22:09:02 +00:00
cfloat license change 2010-11-16 22:09:02 +00:00
chrono _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
cinttypes
ciso646 license change 2010-11-16 22:09:02 +00:00
climits license change 2010-11-16 22:09:02 +00:00
clocale license change 2010-11-16 22:09:02 +00:00
cmath http://llvm.org/bugs/show_bug.cgi?id=9854. Also created an emulated hexfloat literal for use in some of the tests. <sigh> And cleaned up some harmless but irritating warnings in the tests. 2011-05-13 21:52:40 +00:00
codecvt license change 2010-11-16 22:09:02 +00:00
complex _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
complex.h license change 2010-11-16 22:09:02 +00:00
condition_variable _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
csetjmp license change 2010-11-16 22:09:02 +00:00
csignal license change 2010-11-16 22:09:02 +00:00
cstdarg license change 2010-11-16 22:09:02 +00:00
cstdbool license change 2010-11-16 22:09:02 +00:00
cstddef _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
cstdint license change 2010-11-16 22:09:02 +00:00
cstdio license change 2010-11-16 22:09:02 +00:00
cstdlib license change 2010-11-16 22:09:02 +00:00
cstring Bug 7983 fixed by Bernhard Rosenkraenzer 2010-10-14 17:11:39 +00:00
ctgmath license change 2010-11-16 22:09:02 +00:00
ctime license change 2010-11-16 22:09:02 +00:00
cwchar license change 2010-11-16 22:09:02 +00:00
cwctype license change 2010-11-16 22:09:02 +00:00
deque Fix const correctness bug in __move_assign. Found and fixed by Ion Gaztañaga. 2011-09-02 20:42:31 +00:00
exception _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
forward_list Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
fstream _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
functional http://llvm.org/bugs/show_bug.cgi?id=10250 2011-07-02 18:22:36 +00:00
future http://llvm.org/bugs/show_bug.cgi?id=10346 2011-07-13 16:00:50 +00:00
initializer_list Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
iomanip license change 2010-11-16 22:09:02 +00:00
ios _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
iosfwd http://llvm.org/bugs/show_bug.cgi?id=9854. Also created an emulated hexfloat literal for use in some of the tests. <sigh> And cleaned up some harmless but irritating warnings in the tests. 2011-05-13 21:52:40 +00:00
iostream license change 2010-11-16 22:09:02 +00:00
istream Reimplemented much of <istream> such that single character extractions do not check to see if this is the last character in the stream and thus never set eofbit. This fixes http://llvm.org/bugs/show_bug.cgi?id=10817 . This fix requires a recompiled libc++.dylib to be fully implemented. The recompiled libc++.dylib is ABI compatible with that shipped on Lion. 2011-09-01 21:02:45 +00:00
iterator Doug Gregor pointed out some problems with debug mode enabled in one TU and not another. This patch helps detect those situations and offers improved error messages to help get debug mode enabled in more TU's when it is absolutely necessary to do so. Thanks Doug. 2011-09-16 19:52:23 +00:00
limits Applied noexcept to everything in [language.support] (Chapter 18) 2011-05-26 18:23:59 +00:00
list Fix const correctness bug in __move_assign. Found and fixed by Ion Gaztañaga. 2011-09-02 20:42:31 +00:00
locale Fixes for FreeBSD, including some fairly obvious copy-and-paste errors. 2011-09-21 08:39:44 +00:00
map Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
memory Configure to get along with 2.9 clang 2011-07-29 21:35:53 +00:00
mutex _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
new Provide names for template and function parameters in forward declarations. The purpose is to aid automated documentation tools. 2011-06-14 19:58:17 +00:00
numeric license change 2010-11-16 22:09:02 +00:00
ostream Fixing up some ABI issues 2011-07-07 21:03:52 +00:00
queue _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
random Fix needle-in-haystack bug found by Walter Brown 2011-08-15 17:22:22 +00:00
ratio Upgrade <ratio> to use template aliases when available. 2011-05-31 16:55:36 +00:00
regex Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
scoped_allocator _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
set Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
sstream _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
stack _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
stdexcept Applied noexcept to everything in [diagnostics] (Chapter 19) 2011-05-26 19:48:01 +00:00
streambuf _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
string Fix const correctness bug in __move_assign. Found and fixed by Ion Gaztañaga. 2011-09-02 20:42:31 +00:00
strstream Fixing up some ABI issues 2011-07-07 21:03:52 +00:00
system_error Applied noexcept to everything in [diagnostics] (Chapter 19) 2011-05-26 19:48:01 +00:00
tgmath.h license change 2010-11-16 22:09:02 +00:00
thread _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
tuple _STD -> _VSTD to avoid macro clash on windows 2011-06-30 21:18:19 +00:00
type_traits Removed unneeded boost implementation of is_base_of 2011-09-19 13:19:31 +00:00
typeindex noexcept for <typeindex>. This completes Chapter 20 [utilities]. 2011-05-28 18:57:24 +00:00
typeinfo Applied noexcept to everything in [language.support] (Chapter 18) 2011-05-26 18:23:59 +00:00
unordered_map Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
unordered_set Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
utility Fix PR10509: http://llvm.org/bugs/show_bug.cgi?id=10509 2011-07-27 19:25:28 +00:00
valarray Fixed PR10574: http://llvm.org/bugs/show_bug.cgi?id=10574 2011-08-12 21:56:02 +00:00
vector Chris Jefferson noted that vector iterator ownership can be transferred from source to target under move construction and move assignment. This commit makes that happen for debug mode. 2011-09-19 16:34:29 +00:00