wctype_t was previously declared as an enum in bionic, preventing direct integer
assignment. This has since been made more like other libc's, so we can revert
this change.
Bug: 14646243
Change-Id: Ie63711b8f6d4f947b8fe3b278f5503495521555d
math_h, cmath:
Fails a static assert because isnan(double) and isinf(double) should be
returning bool, but aren't. This is a known problem upstream.
http://libcxx.llvm.org/results.Linux.html
uchar_h, cuchar, version_cuchar:
Bionic does not include this header. According to upstream, this was also a
problem with glibc last time they ran their tests. Docs say this is fixed in
glibc 2.16. http://libcxx.llvm.org/results.Linux.html
wctype_h, cwctype:
This one isn't disabled, but did require a fix. The test was casting 0
directly to a wctype_t, which fails because bionic's wctype_t is an enum.
From the POSIX spec, it looks like bionic is allowed to do so, and this test
should be fixed upstream.
cstdio:
snprintf is a macro in bionic, which make it impossible for <cstdio> to
::using snprintf. There may be a work around for this.
quick_exit:
Bionic supports this, but glibc does not. Also becomes available in glibc
2.16. http://libcxx.llvm.org/results.Linux.html
max_align_t:
Needs investigation.
aligned_storage:
Needs investigation.
Change-Id: I62a5210f6755388dc06cce20d81530a300300bf1
To run libc++ tests:
$ mm
$ adb sync
$ python runtests.py # runs all host and device tests
# see main() for command line options
To regenerate all makefiles:
$ python makemake.py
Change-Id: Ibad78ad8e1bd45f32730d281afa53c2cec55478f
libc++abi wasn't catching exceptions out of the box, libcxxrt does. libc++abi is
still used for Darwin.
Change-Id: I93b2a45a515c17e5f219ce8648660313db3971ef
Bug: 14296739
Clang is emitting a text relocation for __gxx_personality_v0 on MIPS, and
the linker is treating this as an error (converted from a warning initially).
The warning appears harmless in this case, so the temporary solution is to
disable it until the LLVM bug is fixed.
Change-Id: I87dd41e7e2247d5b64ba8e2c5ad03db6716871de
* commit '3b74eb32545456120f507d5dc2b74d11a3b89bb0': (1404 commits)
Initial empty repository
Use defined(__APPLE__) rather than __APPLE__
ARM64: compare RTTI names as strings
ARM64: use the alternate string layout on Apple platforms.
[libc++] Teach is_integral, is_[un]signed and make_[un]signed about __[u]int128_t
Implement LWG issue #2135. If something goes wrong in condition_variable::wait, call terminate() rather than throwing an error. Do this indirectly, by marking the call as 'noexcept'. This is better than just calling terminate() directly, because it gives a better error message on the console.
Add tests that should fail when lock() throws. THis is part of LWG issue #2135. No library changes here.
Mark LWG issues #2075 and #2142 as complete. 2142 was a change to the standard to remove redundant wording, which required no changes to libc++. 2075 was a rewrite of the requirements for forward progress, and again, requires no changes to the library.
Add a test to make sure we're doing the right thing for throwing exceptions from deferred functions. This is LWG issue #2186. No change to the library needed.
Mark LWG Issue #2288 as complete. This was wording cleanup, no code changes required. Also mark #2104 as complete. Leave the implementation in libc++ as noexcept, since implementations are allowed to add noexcept to non-virtual calls. If we throw from unique_lock& operator=(unique_lock&& u), then that means the preconditions were violated, and calling terminate() (as a result of throwing from a noexcept function) is as good example of undefined behavior as any other.
Minor cleanup from r204078; remove two empty test directories that were left behind.
Implement N3891: A proposal to rename shared_mutex to shared_timed_mutex
Replace a tab with a space
Remove Issue #2235 from the Chicago section. The resolution was approved in Bristol (and it is listed there), and then is was approved *again* in Chicago. Thanks to STL @ microsoft for the catch
Exclude .svn (and other "dot" directories) when installing headers.
build: remove unnecessary modification of CMAKE_REQUIRED_DEFINITIONS
build: fix erroneous overwriting of flags
build: fix add_definition abuse in CMake
build: remove an errant comma
THIRD TIME. Richard pointed out (again) that I'd switched the order of the instance variables; and thus failed to repair the ABI break. After this, I'm going to sit down and watch TV for the evening.
...