Commit Graph

382 Commits

Author SHA1 Message Date
Howard Hinnant
6063ec176d A much improved type_traits for C++0x. Not yet done: is_trivially_constructible, is_trivially_assignable and underlying_type.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131291 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-13 14:08:16 +00:00
Howard Hinnant
0cfa1f7cbd CWG 1170 has been fixed for destructors
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131290 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-13 13:39:08 +00:00
Sean Hunt
9e604b442c __is_trivially_copyable now supplied by clang
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131271 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-13 00:32:09 +00:00
Howard Hinnant
d5c2f255c5 Corrected misspelling
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131265 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-13 00:03:08 +00:00
Howard Hinnant
7bbce3c0e7 Updated to reflect updated use of existing clang support
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131264 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-13 00:01:01 +00:00
Howard Hinnant
6b41c6047b Corrected some bugs in both memory and the tests. Preparing for being able to turn on support for alias templates.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131199 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-11 20:21:19 +00:00
Howard Hinnant
5d37fb32d2 Redid nothrow traits in terms of non-nothrow traits when noexcept is available
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131198 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-11 20:19:40 +00:00
Howard Hinnant
3666695f0d Updated type_traits and the type_traits design doc with recent work done in clang.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@131090 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-09 19:21:17 +00:00
Nick Kledzik
d982028b92 change RC_BUILDIT to RC_XBS for detecting Apple build environment
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@130970 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-06 01:13:20 +00:00
Nick Kledzik
ffadfd4c1e add support for setjmp/longjmp based exceptions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@130938 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-05 18:45:41 +00:00
Nick Kledzik
c6e08d6c44 <rdar://problem/9014045> more support for Apple internal build environments
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@130872 91177308-0d34-0410-b5e6-96231b3b80d8
2011-05-04 21:50:46 +00:00
Howard Hinnant
469d419a17 Correction to set of overloaded pair constructors for C++0x
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@130521 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-29 18:10:55 +00:00
Douglas Gregor
7ac6af7027 Qualify calls to std::next(), to avoid conflicts with
libraries/applications that define their own 'next' template.


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@130511 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-29 16:20:26 +00:00
Howard Hinnant
e14ea5835e http://llvm.org/bugs/show_bug.cgi?id=9765
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129910 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-21 14:29:59 +00:00
Howard Hinnant
75f7695c62 Think-o in poisson_distribution at mean == 10
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129520 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-14 15:59:22 +00:00
Howard Hinnant
ef3b2e2e34 Fix bug in Sseq constraints found by Seth Cantrell
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129285 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-11 18:22:12 +00:00
Howard Hinnant
9dbeff919b http://llvm.org/bugs/show_bug.cgi?id=9672
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129266 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-11 02:18:41 +00:00
Howard Hinnant
8c1aa2c24d Changes to cerrno to protect against the case the ELAST is not defined.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129255 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-10 19:46:55 +00:00
Howard Hinnant
506b36487c time_get was missing the %F specifier. This change impacts the binary.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@129251 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-10 17:54:14 +00:00
Howard Hinnant
a02851e8a2 Chris Jefferson found a missing const (Bugzilla 9632)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128885 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-05 14:55:28 +00:00
Howard Hinnant
3e93e96dff Corrected tests for http://llvm.org/bugs/show_bug.cgi?id=9351
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128807 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-04 01:42:30 +00:00
Howard Hinnant
b8a03c763a ... And these wonderful tests.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128797 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-03 20:06:31 +00:00
Howard Hinnant
d615e47bea Chris Jefferson submitted this patch to fix http://llvm.org/bugs/show_bug.cgi?id=9351
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128796 91177308-0d34-0410-b5e6-96231b3b80d8
2011-04-03 20:05:29 +00:00
Howard Hinnant
154002bb5d Provide a more readable error message for <atomic> until it is implemented.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128636 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-31 16:39:39 +00:00
Howard Hinnant
41fb6e1432 Jonathan Sauer found a bug in the way ^ was handled
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128350 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-26 20:02:27 +00:00
Howard Hinnant
86e78d694c Jonathan Sauer updated is_base_of traits status
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@128349 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-26 19:58:42 +00:00
Nick Kledzik
770a3c5116 <rdar://problem/9073695> std::uncaught_exception() becomes true before evaluating the throw-expression rather than after
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@127499 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-11 22:33:07 +00:00
Howard Hinnant
d0a2fbfe60 http://llvm.org/bugs/show_bug.cgi?id=9444
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@127412 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-10 17:27:57 +00:00
Howard Hinnant
f9b8998795 I have to revert this recent fix to tuple conversions until clang implements cwg 1170. Without this fix pair and tuple don't convert properly. With it, associative containers get access errors when they shouldn't. cwg 1170 fixes the latter.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@127411 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-10 17:27:30 +00:00
Howard Hinnant
6e5e7e78ee Corrected const-correctness on nullptr type_traits, and beefed up the test for nullptr_t.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@127338 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 17:17:06 +00:00
Howard Hinnant
5885da34ce Walter Brown brought to my attention that type_traits was failing to correctly classify nullptr_t
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@127334 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 15:10:51 +00:00
Howard Hinnant
80586729e4 Chris Jefferson found a defect in the C++0x working draft by trying to run libc++ against boost. I've submitted an issue to the LWG, and this commit attempts to implement the proposed resolution of that defect report. I'd point to the issue but it hasn't been put into the LWG list yet. The title of the issue will be: Stage 2 accumulate incompatibilty
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@127303 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-09 01:03:19 +00:00
Howard Hinnant
8dcad976e0 http://llvm.org/bugs/show_bug.cgi?id=9349 I introduced a bug with the last fix and Ryuta Suzuki has corrected it. And hopefully I committed Ryuta Suzuki's directions correctly this time.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126917 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-03 01:59:23 +00:00
Howard Hinnant
542b0f0cf5 http://llvm.org/bugs/show_bug.cgi?id=9349 I have not personally tested this patch. Please let me know if it causes problems.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126846 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-02 17:29:46 +00:00
Howard Hinnant
fddf722f4e Chris Jefferson found this bug to pair/tuple introduced by a recent change to the draft that I missed.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126743 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-01 14:27:55 +00:00
Howard Hinnant
171869e27c Fix copy_n to increment only n-1 times for an input iterator. This works much better with std::istream_iterator<int>(std::cin). Credit: Matan Nassau.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126581 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-27 20:55:39 +00:00
Howard Hinnant
df85e57f4a Fixed two problems found by Chris Jefferson: Made operator>> for char consistent with gcc. Opened an LWG issue on this one. 2) Renamed some private typedefs which are causing boost grief.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126576 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-27 18:02:02 +00:00
Howard Hinnant
e7c8da6f2d http://llvm.org/bugs/show_bug.cgi?id=9326
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126504 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-25 19:52:41 +00:00
Howard Hinnant
b2080c70d4 Chris Jefferson spotted a problem with messages_base::catalog while getting libc++ to work on boost. The standard says this type must be an int. But this type is the key returned by the OS facility catopen. On OS X the type returned by catopen is void*, which doesn't fit into an int on 64 bit platforms. Chris suggested using ptrdiff_t instead of void*. It still isn't compliant with the standard, but chances are that this change will fix what is ailing boost. Chris also supplied the algorithm for distinguishing high-order pointers from error conditions. Thanks Chris.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126462 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-25 00:51:08 +00:00
Howard Hinnant
5a245dbf52 Jean-Daniel Dupas fixes install directions
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@126222 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-22 14:18:34 +00:00
Howard Hinnant
08774c5a22 Change install name to libc++.1.dylib
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@125626 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-16 00:40:06 +00:00
Howard Hinnant
6cf5d8c3aa Chris Jefferson noted many places where function calls needed to be qualified (thanks Chris).
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@125510 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-14 19:12:38 +00:00
Howard Hinnant
c4cbb5b6b7 Update testit to default to clang
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@125498 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-14 18:06:10 +00:00
Howard Hinnant
621ee222d9 fix stupid type-o
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@125311 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-10 21:34:42 +00:00
Howard Hinnant
31b8e617b6 Installed __has_feature(is_convertible_to) and __has_feature(is_base_of)
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@125290 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-10 17:46:03 +00:00
Howard Hinnant
47a7cce01e Missing traits::to_int_type in fstream
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@124727 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-02 17:37:16 +00:00
Howard Hinnant
2529d02b5d Qualify calls to addressof with std::. Bug 9106
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@124726 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-02 17:36:20 +00:00
Howard Hinnant
211f0ee1be Bug 9096 - list::iterator not default constructible
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@124508 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-28 23:46:28 +00:00
Howard Hinnant
80f9180729 minor corrections to test, and hook is_base_of up to clang intrinsic
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@124502 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-28 20:00:37 +00:00
Douglas Gregor
9ca45e21b8 Eliminate extraneous {};
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@124456 91177308-0d34-0410-b5e6-96231b3b80d8
2011-01-27 23:36:08 +00:00