llvm-project/libcxx/test/std/utilities
Ed Schouten e0cf3b9a3c Make support for thread-unsafe C functions optional.
One of the aspects of CloudABI is that it aims to help you write code
that is thread-safe out of the box. This is very important if you want
to write libraries that are easy to reuse. For CloudABI we decided to
not provide the thread-unsafe functions. So far this is working out
pretty well, as thread-unsafety issues are detected really early on.

The following patch adds a knob to libc++,
_LIBCPP_HAS_NO_THREAD_UNSAFE_C_FUNCTIONS, that can be set to disable
thread-unsafe functions that can easily be avoided in practice. The
following functions are not thread-safe:

- <clocale>: locale handles should be preferred over setlocale().
- <cstdlib>: mbrlen(), mbrtowc() and wcrtomb() should be preferred over
  their non-restartable counterparts.
- <ctime>: asctime(), ctime(), gmtime() and localtime() are not
  thread-safe. The first two are also deprecated by POSIX.

Differential Revision:	http://reviews.llvm.org/D8703
Reviewed by:	marshall

llvm-svn: 240527
2015-06-24 08:44:38 +00:00
..
allocator.adaptor Add 'is_always_equal' tests for scoped_allocator. Found that I had typed '||' where I meant '&&' in the code; fixed that, too 2015-06-03 16:15:55 +00:00
date.time Make support for thread-unsafe C functions optional. 2015-06-24 08:44:38 +00:00
function.objects Fix std::function allocator constructors in C++03. 2015-06-14 23:30:09 +00:00
intseq
memory Fix PR#18843. Thanks to Howard for the fix 2015-06-19 15:54:13 +00:00
meta Cleanup result_of tests and fix issues with the C++03 result_of. 2015-06-13 08:25:24 +00:00
ratio A few bits of N2994 didn't get fully implemented a long time ago. Thanks to STL@microsoft.com for the bug report 2015-04-16 21:36:54 +00:00
template.bitset libc++ implements its' hash objects as deriving from std::unary_function, and the tests test for that. STL @ MS pointed out that the standard doesn't requie these objects to derive from unary_function, and so the tests should not require that either. Change the tests to check for the embedded typedefs - which ARE required. No change to the library. 2015-01-07 21:53:23 +00:00
time Get tests running with warnings. Fix warnings in headers and tests 2015-02-05 20:28:37 +00:00
tuple [libc++] Try and prevent evaluation of `is_default_constructible` on tuples default constructor if it is not needed. 2015-02-21 02:30:41 +00:00
type.index Get tests running with warnings. Fix warnings in headers and tests 2015-02-05 20:28:37 +00:00
utilities.general
utility Cleanup move/forward tests and remove references to __rv. 2015-05-27 00:51:08 +00:00
utility.requirements
nothing_to_do.pass.cpp