llvm-project/libcxx/test/support
Tom Honermann 7e7013c5d4 [libc++][cuchar] Declare std::c8rtomb and std::mbrtoc8 in <cuchar> if available.
This change implements the C library dependent portions of P0482R6
(char8_t: A type for UTF-8 characters and strings (Revision 6)) by
declaring std::c8rtomb() and std::mbrtoc8() in the <cuchar> header
when implementations are provided by the C library as specified by
WG14 N2653 (char8_t: A type for UTF-8 characters and strings
(Revision 1)) as adopted for C23.

A _LIBCPP_HAS_NO_C8RTOMB_MBRTOC8 macro is defined by the libc++ __config
header unless it is known that the C library provides these functions
in the current compilation mode. This macro is used for testing purposes
and may be of use to libc++ users. At present, the only C library known
to implement these functions is GNU libc as of its 2.36 release.

Reviewed By: ldionne

Differential Revision: https://reviews.llvm.org/D130946
2022-09-10 21:10:33 -04:00
..
test.support [libc++] Make <ranges> non-experimental 2022-08-18 16:59:58 -04:00
test.workarounds [libcxx][test] compiler options are non-portable 2022-01-18 11:34:57 -08:00
type_classification [libc++] Define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER whenever we enable warnings in the test suite 2022-03-15 17:17:54 -04:00
Counter.h
DefaultOnly.h [libc++] NFC: Normalize `#endif //` comment indentation 2021-04-20 12:03:32 -04:00
MoveOnly.h [libc++][test] Fix conversion signed/unsigned in test/support/MoveOnly.h 2022-08-15 22:09:54 +07:00
allocators.h [libc++] Granularize the rest of memory 2022-09-05 12:36:41 +02:00
almost_satisfies_types.h [libc++][ranges] Implement `ranges::{prev, next}_permutation`. 2022-08-02 22:46:15 -07:00
any_helpers.h [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
archetypes.h [libc++] Granularize <iterator> includes 2022-06-10 22:43:57 +02:00
archetypes.ipp
asan_testing.h [libc++] Implement P1004R2 (constexpr std::vector) 2022-07-27 20:26:44 +02:00
atomic_helpers.h [libc++] Remove macros for IBM compiler 2022-06-14 09:15:41 -04:00
boolean_testable.h [libc++] Implement ranges::lexicographical_compare 2022-06-15 22:29:21 +02:00
callable_types.h
charconv_test_helpers.h [libc++] Implements 128-bit support in to_chars. 2022-07-07 17:32:27 +02:00
check_assertion.h [libc++] Rename __libcpp_assertion_handler to __libcpp_verbose_abort 2022-07-29 13:52:42 -04:00
cmpxchg_loop.h
compare_types.h [libc++] Remove random [[nodiscard]] in the test suite 2021-07-12 12:45:21 -04:00
constexpr_char_traits.h [libc++][NFC] Remove reserved names from support/constexpr_char_traits.h 2022-08-26 17:37:47 +02:00
container_debug_tests.h [libc++] Make the Debug mode a configuration-time only option 2022-06-07 16:33:53 -04:00
container_test_types.h [libc++] Granularize the rest of memory 2022-09-05 12:36:41 +02:00
controlled_allocators.h [libc++] Granularize the rest of memory 2022-09-05 12:36:41 +02:00
count_new.h [libc++] Add warning pragma macros in the test suite 2022-03-17 00:11:20 +01:00
counting_predicates.h [libc++][ranges] Implement `ranges::replace_copy{,_if}`. 2022-08-02 22:32:01 -07:00
counting_projection.h [libc++][ranges] Implement `ranges::remove_copy{, _if}`. 2022-08-02 22:19:13 -07:00
deduction_guides_sfinae_checks.h [libc++] Granularize <iterator> includes 2022-06-10 22:43:57 +02:00
deleter_types.h [libc++] Implement P2273R3 (`constexpr` `unique_ptr`) 2022-09-03 18:49:50 +07:00
emplace_constructible.h
experimental_any_helpers.h
external_threads.cpp
filesystem_include.h
filesystem_test_helper.h [libc++] Extend check for non-ASCII characters to src/, test/ and benchmarks/ 2022-08-23 18:36:38 -04:00
format_string.h [libcxx] Fixed a number of typos 2022-08-02 12:42:34 +02:00
fp_compare.h [libc++] Extend check for non-ASCII characters to src/, test/ and benchmarks/ 2022-08-23 18:36:38 -04:00
hexfloat.h
indirectly_readable.h [libc++] Add all indirect callable concepts and projected 2021-05-28 10:10:44 -04:00
is_transparent.h [libc++] [P0919] Some belated review on D87171. 2021-09-20 14:46:38 -04:00
iterator_traits_cpp17_iterators.h
locale_helpers.h [libc++][CI] fixed convert_thousands_sep_ru_RU for Russian in the libcxx/test/support/locale_helpers.h for AIX 2022-05-31 13:55:59 -04:00
make_implicit.h
make_string.h [libc++] [test] C++03-friendly MAKE_STRING macro. 2021-12-01 15:02:53 -05:00
make_test_thread.h
min_allocator.h [libc++] Granularize the rest of memory 2022-09-05 12:36:41 +02:00
msvc_stdlib_force_include.h [libcxx][test] Suppress complex<int> warnings when testing MSVC 2022-06-23 17:46:54 -07:00
nasty_containers.h [libc++] [test] Constexpr-ify a couple of insert-iterator tests. 2021-05-28 15:15:50 -04:00
operator_hijacker.h [libc++] Use addressof in assignment operator. 2021-10-07 18:10:47 +02:00
parse_integer.h [libc++] NFC: Normalize `#endif //` comment indentation 2021-04-20 12:03:32 -04:00
platform_support.h [libc++][test] Fix infinite loop when mkstemp fails 2022-07-22 16:20:47 -07:00
pointer_comparison_test_helper.h [libcxx][nfc] Add license to `pointer_comparison_test_helper.h` 2021-04-23 12:37:47 -07:00
poisoned_hash_helper.h [libc++] Implement P1004R2 (constexpr std::vector) 2022-07-27 20:26:44 +02:00
private_constructor.h
propagate_const_helpers.h
propagate_value_category.hpp
rapid-cxx-test.h
read_write.h [libc++] Re-apply `std::indirectly_readable` and `std::indirectly_writable` 2021-04-22 11:24:04 -04:00
set_windows_crt_report_mode.h
string_literal.h [NFC][libc++][format] Prepare unit tests. 2022-04-08 17:11:45 +02:00
template_cost_testing.h
test_allocator.h [libc++] Implement P1004R2 (constexpr std::vector) 2022-07-27 20:26:44 +02:00
test_basic_format_arg.h [libc++][format] Add __format_arg_store. 2021-09-01 19:45:02 +02:00
test_comparisons.h [libc++][spaceship] Implement std::variant::operator<=> 2022-08-14 16:16:52 -07:00
test_constexpr_container.h [libcxx][test] Add missing includes and suppress warnings 2022-01-13 17:34:04 -08:00
test_convertible.h
test_format_context.h [libc++][format] Add __format_arg_store. 2021-09-01 19:45:02 +02:00
test_iterators.h [libc++] Make <ranges> non-experimental 2022-08-18 16:59:58 -04:00
test_macros.h [libc++][cuchar] Declare std::c8rtomb and std::mbrtoc8 in <cuchar> if available. 2022-09-10 21:10:33 -04:00
test_memory_resource.h
test_range.h [libcxx][test] Test code should inspect `TEST_STD_VER`, not `_LIBCPP_STD_VER`. 2022-08-02 12:07:29 -07:00
test_transparent_unordered.h [libc++] [P0919] Some belated review on D87171. 2021-09-20 14:46:38 -04:00
test_workarounds.h [libcxx][test] compiler options are non-portable 2022-01-18 11:34:57 -08:00
truncate_fp.h
type_id.h [libc++] Remove uses of printf in some test support headers 2021-11-22 12:01:18 -05:00
unique_ptr_test_helper.h [libc++] Implement P2273R3 (`constexpr` `unique_ptr`) 2022-09-03 18:49:50 +07:00
user_defined_integral.h
uses_alloc_types.h [libc++] Remove uses of printf in some test support headers 2021-11-22 12:01:18 -05:00
variant_test_helpers.h