TTobias Hieta[libc++][NFC] Fix signature of main in test
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc++][NFC] Fix signature of main in test (cherry picked from commit 27442728cd2e28bfaf0f2d89ad6378b4377e9c66) | 3 年前 | |
[libcxx][test] compiler options are non-portable ... it's easier to suppress warnings internally, where we can detect the compiler. * Rename TEST_COMPILER_C1XX to TEST_COMPILER_MSVC * Rename all TEST_WORKAROUND_C1XX_<meow> to TEST_WORKAROUND_MSVC_<meow> Differential Revision: https://reviews.llvm.org/D117422 | 4 年前 | |
[libc++] Define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER whenever we enable warnings in the test suite This should make CI consistent on all the compilers we support. Most of this patch is working around various warnings emitted by GCC in our code base, which are now being shown when we compile the tests. After this patch, the whole test suite should be warning free on all compilers we support and test, except for a few warnings on GCC that we silence explicitly until we figure out the proper fix for them. Differential Revision: https://reviews.llvm.org/D120684 | 4 年前 | |
Update more file headers across all of the LLVM projects in the monorepo to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648 | 7 年前 | |
[libc++] NFC: Normalize #endif // comment indentation | 5 年前 | |
[libc++][ranges][NFC] Test that range algorithms support iterators requiring iter_move. Differential Revision: https://reviews.llvm.org/D130057 | 3 年前 | |
[libc++] Implement P1004R2 (constexpr std::vector) Reviewed By: #libc, ldionne Spies: mgorny, var-const, ormris, philnik, miscco, hiraditya, steven_wu, jkorous, ldionne, christof, libcxx-commits Differential Revision: https://reviews.llvm.org/D68365 (cherry picked from commit 98d3d5b5da66e3cf7807c23a0294280bb796466b) | 3 年前 | |
[libc++][ranges] Implement ranges::{prev, next}_permutation. Co-authored-by: Konstantin Varlamov <varconst@apple.com> Differential Revision: https://reviews.llvm.org/D129859 (cherry picked from commit 68264b649461206dc095e672eacf8a003e0b9e49) | 3 年前 | |
[libc++][NFC] Remove uses of 'using namespace std;' in the test suite Differential Revision: https://reviews.llvm.org/D109120 | 4 年前 | |
[libc++] Granularize <iterator> includes Reviewed By: ldionne, #libc Spies: libcxx-commits, wenlei Differential Revision: https://reviews.llvm.org/D127445 | 3 年前 | |
[libc++][test] Add license headers to test/support/archetypes.* Differential Revision: https://reviews.llvm.org/D68947 llvm-svn: 374797 | 6 年前 | |
[libc++] Implement P1004R2 (constexpr std::vector) Reviewed By: #libc, ldionne Spies: mgorny, var-const, ormris, philnik, miscco, hiraditya, steven_wu, jkorous, ldionne, christof, libcxx-commits Differential Revision: https://reviews.llvm.org/D68365 (cherry picked from commit 98d3d5b5da66e3cf7807c23a0294280bb796466b) | 3 年前 | |
[libc++] Remove macros for IBM compiler It's not tested or used anymore -- instead a Clang-based compiler is used on IBM nowadays. Differential Revision: https://reviews.llvm.org/D127650 | 3 年前 | |
[libc++] Implement ranges::lexicographical_compare Reviewed By: var-const, Mordante, #libc Spies: H-G-Hristov, sstefan1, libcxx-commits, mgorny Differential Revision: https://reviews.llvm.org/D127130 | 3 年前 | |
[libc++] Add bind_front function (P0356R5). Implementes [[ http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0356r5.html | P0356R5 ]]. Adds bind_front to functional. Reviewed By: ldionne, #libc, Quuxplusone Differential Revision: https://reviews.llvm.org/D60368 | 5 年前 | |
[libc++] Implements 128-bit support in to_chars. This is required by the Standard and makes it possible to add full 128-bit support to format. The patch also fixes 128-bit from_chars "support". One unit test required a too large value, this failed on 128-bit; the fix was to add more characters to the input. Note only base 10 has been optimized. Other bases can be optimized. Note the 128-bit lookup table could be made smaller. This will be done later. I really want to get 128-bit working in to_chars and format in the upcomming LLVM 15 release, these optimizations aren't critical. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D128929 | 3 年前 | |
[libc++] Rename __libcpp_assertion_handler to __libcpp_verbose_abort With the goal of reusing that handler to do other things besides handling assertions (such as terminating when an exception is thrown under -fno-exceptions), the name __libcpp_assertion_handler doesn't really make sense anymore. Furthermore, I didn't want to use the name __libcpp_abort_handler, since that would give the impression that the handler is called whenever std::abort() is called, which is not the case at all. Differential Revision: https://reviews.llvm.org/D130562 (cherry picked from commit 507125af3d0b953cb56bce2e5b8000249fe1ef53) | 3 年前 | |
Update atomic feature macros, synopsis, signatures to match C++20. Improve test coverage for non-lock-free atomics. | 5 年前 | |
[libc++] Remove random [[nodiscard]] in the test suite | 4 年前 | |
[libc++] Implement P0980R1 (constexpr std::string) Reviewed By: #libc, ldionne Spies: daltenty, sdasgup3, ldionne, arichardson, MTC, ChuanqiXu, mehdi_amini, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, aartbik, liufengdb, stephenneuendorffer, Joonsoo, grosul1, Kayjukh, jurahul, msifontes, tatianashp, rdzhabarov, teijeong, cota, dcaballe, Chia-hungDuan, wrengr, wenzhicui, arphaman, Mordante, miscco, Quuxplusone, smeenai, libcxx-commits Differential Revision: https://reviews.llvm.org/D110598 | 4 年前 | |
[libc++] Make the Debug mode a configuration-time only option The debug mode has been broken pretty much ever since it was shipped because it was possible to enable the debug mode in user code without actually enabling it in the dylib, leading to ODR violations that caused various kinds of failures. This commit makes the debug mode a knob that is configured when building the library and which can't be changed afterwards. This is less flexible for users, however it will actually work as intended and it will allow us, in the future, to add various kinds of checks that do not assume the same ABI as the normal library. Furthermore, this will make the debug mode more robust, which means that vendors might be more tempted to support it properly, which hasn't been the case with the current debug mode. This patch shouldn't break any user code, except folks who are building against a library that doesn't have the debug mode enabled and who try to enable the debug mode in their code. Such users will get a compile-time error explaining that this configuration isn't supported anymore. In the future, we should further increase the granularity of the debug mode checks so that we can cherry-pick which checks to enable, like we do for unspecified behavior randomization. Differential Revision: https://reviews.llvm.org/D122941 | 4 年前 | |
[libc++] s/insertible/insertable/g. NFCI. | 5 年前 | |
[libc++] Remove uses of printf in some test support headers In the test suite, we generally don't use printf or other reporting utilities. It's not that it wouldn't be useful, it's just that some platforms don't support IO. Instead, we try to keep test cases small and self-contained so that we can reasonably easily reproduce failures locally and debug them. This patch removes printf in some of the last places in the test suite that used it. The only remaining places are in a deque test and in the filesystem tests. The filesystem tests are arguably fine to keep using IO, since we're testing <filesystem>. The deque test will be handled separately. Differential Revision: https://reviews.llvm.org/D114282 | 4 年前 | |
[libc++] Add warning pragma macros in the test suite Reviewed By: ldionne, #libc, EricWF Spies: EricWF, libcxx-commits Differential Revision: https://reviews.llvm.org/D121552 | 4 年前 | |
[libc++][ranges] Implement ranges::replace_copy{,_if}. Co-authored-by: Konstantin Varlamov <varconst@apple.com> Differential Revision: https://reviews.llvm.org/D129806 (cherry picked from commit 93172c1c2b10066628c85c9ff78eb882222fb304) | 3 年前 | |
[libc++][ranges] Implement ranges::remove_copy{, _if}. Co-authored-by: Hui Xie <hui.xie1990@gmail.com> Differential Revision: https://reviews.llvm.org/D130599 (cherry picked from commit 760d2b462c04537d119d76d3cc37d2cb53774a05) | 3 年前 | |
[libc++] Granularize <iterator> includes Reviewed By: ldionne, #libc Spies: libcxx-commits, wenlei Differential Revision: https://reviews.llvm.org/D127445 | 3 年前 | |
[libc++] Value-initialize unique_ptr's deleter_type According to the C++ standard, the stored pointer and the stored deleter should be value-initialized. Differential Revision: https://reviews.llvm.org/D113612 | 4 年前 | |
[libc++] Make some testing utilities constexpr This will be needed in order to test constexpr std::vector. | 5 年前 | |
[libc++] Fix failures when running the test suite without RTTI | 5 年前 | |
Update more file headers across all of the LLVM projects in the monorepo to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648 | 7 年前 | |
libcxx: Rename .hpp files in libcxx/test/support to .h LLVM uses .h as its extension for header files. Files renamed using: for f in libcxx/test/support/*.hpp; do git mv $f ${f%.hpp}.h; done References to the files updated using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do a=$(basename $f); echo $a; rg -l $a libcxx | xargs sed -i '' "s/$a/${a%.hpp}.h/"; done HPP include guards updated manually using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do echo ${f%.hpp}.h ; done | xargs mvim Differential Revision: https://reviews.llvm.org/D66104 llvm-svn: 369481 | 6 年前 | |
[libcxx] [test] Make filesystem tests not rely on libc++ internals As part of https://reviews.llvm.org/D119036 (506cf6dc048835c598b654e43ed8f723a42e39ba), -DNOMINMAX was dropped from the Windows CI configurations, replaced with a block with _LIBCPP_PUSH_MACROS, #include <__undef_macros> and _LIBCPP_POP_MACROS (and ADDITIONAL_COMPILE_FLAGS: -DNOMINMAX left in two tests). However, this workaround breaks the running the libc++ tests against a different C++ standard library than libc++, as those macros and that header are libc++ internals. Therefore, reinstate -DNOMINMAX for clang-cl configurations and remove the libc++ specific bits in filesystem_test_helper.h. Differential Revision: https://reviews.llvm.org/D120478 | 4 年前 | |
libcxx: Rename .hpp files in libcxx/test/support to .h LLVM uses .h as its extension for header files. Files renamed using: for f in libcxx/test/support/*.hpp; do git mv $f ${f%.hpp}.h; done References to the files updated using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do a=$(basename $f); echo $a; rg -l $a libcxx | xargs sed -i '' "s/$a/${a%.hpp}.h/"; done HPP include guards updated manually using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do echo ${f%.hpp}.h ; done | xargs mvim Differential Revision: https://reviews.llvm.org/D66104 llvm-svn: 369481 | 6 年前 | |
Implement midpoint for floating point types. Reviewed as https://reviews.llvm.org/D61014. llvm-svn: 359184 | 7 年前 | |
Update more file headers across all of the LLVM projects in the monorepo to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648 | 7 年前 | |
[libc++] Add all indirect callable concepts and projected Differential Revision: https://reviews.llvm.org/D101277 | 5 年前 | |
[libc++] [P0919] Some belated review on D87171. - Simplify the structure of the new tests. - Test const containers as well as non-const containers, since it's easy to do so. - Remove redundant enable-iffing of helper structs' member functions. (They're not instantiated unless they're called, and who would call them?) - Fix indentation and use more consistent SFINAE method in <unordered_map>. - Add _LIBCPP_INLINE_VISIBILITY on some swap functions. Differential Revision: https://reviews.llvm.org/D109011 | 4 年前 | |
[libcxx] makes iterator_traits C++20-aware * adds iterator_traits specialisation that supports all expected member aliases except for pointer * adds iterator_traits specialisations for iterators that meet the legacy iterator requirements but might lack multiple member aliases * makes pointer iterator_traits specialisation require objects Depends on D99854. Differential Revision: https://reviews.llvm.org/D99855 | 5 年前 | |
[libc++][CI] fixed convert_thousands_sep_ru_RU for Russian in the libcxx/test/support/locale_helpers.h for AIX Reviewers: David Tenty, Mark de Wever Differential Revision: https://reviews.llvm.org/D125923 | 4 年前 | |
[libc++] [P0935] [C++20] Eradicating unnecessarily explicit default constructors from the standard library. http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0935r0.html Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D91292 | 5 年前 | |
[libc++] [test] C++03-friendly MAKE_STRING macro. Reviewed as part of D114658. | 4 年前 | |
[libc++] Introduce an indirection to create threads in the test suite We create threads using std::thread in various places in the test suite. However, the usual std::thread constructor may not work on all platforms, e.g. on platforms where passing a stack size is required to create a thread. This commit introduces a simple indirection that makes it easier to tweak how threads are created inside the test suite on various platforms. Note that tests that are purposefully calling std::thread's constructor directly (e.g. because that is what they're testing) were not modified. | 5 年前 | |
[libc++] Granularize <iterator> includes Reviewed By: ldionne, #libc Spies: libcxx-commits, wenlei Differential Revision: https://reviews.llvm.org/D127445 | 3 年前 | |
[libcxx][test] Suppress complex<int> warnings when testing MSVC | 3 年前 | |
[libc++] [test] Constexpr-ify a couple of insert-iterator tests. This should have been done in D96385; thanks ldionne for the catch! Also, make the back/front inserter behavior tests a little more thorough, which incidentally caught a cut-and-paste-bug in nasty_list, so fix that. Differential Revision: https://reviews.llvm.org/D103318 | 5 年前 | |
[libc++] Use addressof in assignment operator. Replace &__rhs with _VSTD::addressof(__rhs) to guard against ADL hijacking of operator& in operator=. Thanks to @CaseyCarter for bringing it to our attention. Similar issues with hijacking operator& still exist, they will be addressed separately. Reviewed By: #libc, Quuxplusone, ldionne Differential Revision: https://reviews.llvm.org/D110852 | 4 年前 | |
[libc++] NFC: Normalize #endif // comment indentation | 5 年前 | |
[libc++][test] Fix infinite loop when mkstemp fails mkstemp is guaranteed to make at least TMP_MAX attempts to create the random file, and if it can't, it fails with EEXIST. get_temp_file_name shouldn't call mkstemp again if it fails with anything other than EEXIST. A single mkstemp call seems sufficient. On Android, I've seen mkstemp fail with: - EROFS (because cwd wasn't set to a writable filesystem) - EACCES (because cwd pointed to a dir owned by root, but the test program was running as the shell user instead) Previously, get_temp_file_name would run forever in these situations. See D4962 and "llvm-svn: 229035" Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D130214 | 3 年前 | |
[libcxx][nfc] Add license to pointer_comparison_test_helper.h | 5 年前 | |
[libc++] Implement P1004R2 (constexpr std::vector) Reviewed By: #libc, ldionne Spies: mgorny, var-const, ormris, philnik, miscco, hiraditya, steven_wu, jkorous, ldionne, christof, libcxx-commits Differential Revision: https://reviews.llvm.org/D68365 (cherry picked from commit 98d3d5b5da66e3cf7807c23a0294280bb796466b) | 3 年前 | |
[libc++] Remove unnecessary usage of <iostream> in the test suite Tests should strive to be as minimal as possible, since it makes them relevant on platforms where <iostream> does not work. | 5 年前 | |
[libc++][NFC] Remove excess trailing newlines from most files Testing git commit access. | 6 年前 | |
[libc++] Fix tuple assignment from types derived from a tuple-like The implementation of tuple's constructors and assignment operators currently diverges from the way the Standard specifies them, which leads to subtle cases where the behavior is not as specified. In particular, a class derived from a tuple-like type (e.g. pair) can't be assigned to a tuple with corresponding members, when it should. This commit re-implements the assignment operators (BUT NOT THE CONSTRUCTORS) in a way much closer to the specification to get rid of this bug. Most of the tests have been stolen from Eric's patch https://reviews.llvm.org/D27606. As a fly-by improvement, tests for noexcept correctness have been added to all overloads of operator=. We should tackle the same issue for the tuple constructors in a future patch - I'm just trying to make progress on fixing this long-standing bug. PR17550 rdar://15837420 Differential Revision: https://reviews.llvm.org/D50106 | 5 年前 | |
libcxx: Rename .hpp files in libcxx/test/support to .h LLVM uses .h as its extension for header files. Files renamed using: for f in libcxx/test/support/*.hpp; do git mv $f ${f%.hpp}.h; done References to the files updated using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do a=$(basename $f); echo $a; rg -l $a libcxx | xargs sed -i '' "s/$a/${a%.hpp}.h/"; done HPP include guards updated manually using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do echo ${f%.hpp}.h ; done | xargs mvim Differential Revision: https://reviews.llvm.org/D66104 llvm-svn: 369481 | 6 年前 | |
[libc++] Re-apply std::indirectly_readable and std::indirectly_writable That was originally committed in 04733181b513 and then reverted in a9f11cc0d965 because it broke several people. The problem was a missing include of __iterator/concepts.h, which has now been fixed. Differential Revision: https://reviews.llvm.org/D100073 | 5 年前 | |
Update more file headers across all of the LLVM projects in the monorepo to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648 | 7 年前 | |
[NFC][libc++][format] Prepare unit tests. Before implementing P2216's format-string adjust the unit tests. After P2216 the format* functions require a compile-time string literal. This changes prepares the tests. Reviewed By: #libc, ldionne Differential Revision: https://reviews.llvm.org/D122534 | 4 年前 | |
add header to help with template testing llvm-svn: 363503 | 6 年前 | |
[libc++] Implement P1004R2 (constexpr std::vector) Reviewed By: #libc, ldionne Spies: mgorny, var-const, ormris, philnik, miscco, hiraditya, steven_wu, jkorous, ldionne, christof, libcxx-commits Differential Revision: https://reviews.llvm.org/D68365 (cherry picked from commit 98d3d5b5da66e3cf7807c23a0294280bb796466b) | 3 年前 | |
[libc++][format] Add __format_arg_store. This implements the struct __format_arg_store and its dependencies: * the class basic_format_arg, * the class basic_format_args, * the class basic_format_context, * the function make_format_args, * the function wmake_format_args, * the function visit_format_arg, * several Standard required typedefs. The following parts will be implemented in a later patch: * the child class basic_format_arg::handle, * the function basic_format_arg::basic_format_arg(const T* p). The following extension has been implemented: * the class basic_format_arg supports __[u]int128_t on platform where libc++ supports 128 bit integrals. Implements parts of: * P0645 Text Formatting Completes: * LWG3371 visit_format_arg and make_format_args are not hidden friends * LWG3542 basic_format_arg mishandles basic_string_view with custom traits Note https://mordante.github.io/blog/2021/06/05/format.html gives a bit more information about the goals and non-goals of this initial patch series. Reviewed By: #libc, ldionne, vitaut Differential Revision: https://reviews.llvm.org/D103357 | 4 年前 | |
[libc++][test] Adds spaceship support to macros. This was already reviewed as D128603. This contains only the updates to the test script. Differential Revision: https://reviews.llvm.org/D129578 | 3 年前 | |
[libcxx][test] Add missing includes and suppress warnings ... from testing with MSVC's STL. Mostly truncation warnings and variables that are only used in LIBCPP_ASSERT. Differential Revision: https://reviews.llvm.org/D116878 | 4 年前 | |
libcxx: Rename .hpp files in libcxx/test/support to .h LLVM uses .h as its extension for header files. Files renamed using: for f in libcxx/test/support/*.hpp; do git mv $f ${f%.hpp}.h; done References to the files updated using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do a=$(basename $f); echo $a; rg -l $a libcxx | xargs sed -i '' "s/$a/${a%.hpp}.h/"; done HPP include guards updated manually using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do echo ${f%.hpp}.h ; done | xargs mvim Differential Revision: https://reviews.llvm.org/D66104 llvm-svn: 369481 | 6 年前 | |
[libc++][format] Add __format_arg_store. This implements the struct __format_arg_store and its dependencies: * the class basic_format_arg, * the class basic_format_args, * the class basic_format_context, * the function make_format_args, * the function wmake_format_args, * the function visit_format_arg, * several Standard required typedefs. The following parts will be implemented in a later patch: * the child class basic_format_arg::handle, * the function basic_format_arg::basic_format_arg(const T* p). The following extension has been implemented: * the class basic_format_arg supports __[u]int128_t on platform where libc++ supports 128 bit integrals. Implements parts of: * P0645 Text Formatting Completes: * LWG3371 visit_format_arg and make_format_args are not hidden friends * LWG3542 basic_format_arg mishandles basic_string_view with custom traits Note https://mordante.github.io/blog/2021/06/05/format.html gives a bit more information about the goals and non-goals of this initial patch series. Reviewed By: #libc, ldionne, vitaut Differential Revision: https://reviews.llvm.org/D103357 | 4 年前 | |
[libcxx][test] Test code should inspect TEST_STD_VER, not _LIBCPP_STD_VER. (cherry picked from commit a1a30dc933b928a7a8277d5b5f7bd25670e68884) | 3 年前 | |
[libc++] Remove macros for IBM compiler It's not tested or used anymore -- instead a Clang-based compiler is used on IBM nowadays. Differential Revision: https://reviews.llvm.org/D127650 | 3 年前 | |
libcxx: Rename .hpp files in libcxx/test/support to .h LLVM uses .h as its extension for header files. Files renamed using: for f in libcxx/test/support/*.hpp; do git mv $f ${f%.hpp}.h; done References to the files updated using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do a=$(basename $f); echo $a; rg -l $a libcxx | xargs sed -i '' "s/$a/${a%.hpp}.h/"; done HPP include guards updated manually using: for f in $(git diff master | grep 'rename from' | cut -f 3 -d ' '); do echo ${f%.hpp}.h ; done | xargs mvim Differential Revision: https://reviews.llvm.org/D66104 llvm-svn: 369481 | 6 年前 | |
[libcxx][test] Test code should inspect TEST_STD_VER, not _LIBCPP_STD_VER. (cherry picked from commit a1a30dc933b928a7a8277d5b5f7bd25670e68884) | 3 年前 | |
[libc++] [P0919] Some belated review on D87171. - Simplify the structure of the new tests. - Test const containers as well as non-const containers, since it's easy to do so. - Remove redundant enable-iffing of helper structs' member functions. (They're not instantiated unless they're called, and who would call them?) - Fix indentation and use more consistent SFINAE method in <unordered_map>. - Add _LIBCPP_INLINE_VISIBILITY on some swap functions. Differential Revision: https://reviews.llvm.org/D109011 | 4 年前 | |
[libcxx][test] compiler options are non-portable ... it's easier to suppress warnings internally, where we can detect the compiler. * Rename TEST_COMPILER_C1XX to TEST_COMPILER_MSVC * Rename all TEST_WORKAROUND_C1XX_<meow> to TEST_WORKAROUND_MSVC_<meow> Differential Revision: https://reviews.llvm.org/D117422 | 4 年前 | |
Update more file headers across all of the LLVM projects in the monorepo to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648 | 7 年前 | |
[libc++] Remove uses of printf in some test support headers In the test suite, we generally don't use printf or other reporting utilities. It's not that it wouldn't be useful, it's just that some platforms don't support IO. Instead, we try to keep test cases small and self-contained so that we can reasonably easily reproduce failures locally and debug them. This patch removes printf in some of the last places in the test suite that used it. The only remaining places are in a deque test and in the filesystem tests. The filesystem tests are arguably fine to keep using IO, since we're testing <filesystem>. The deque test will be handled separately. Differential Revision: https://reviews.llvm.org/D114282 | 4 年前 | |
[libc++] Add warning pragma macros in the test suite Reviewed By: ldionne, #libc, EricWF Spies: EricWF, libcxx-commits Differential Revision: https://reviews.llvm.org/D121552 | 4 年前 | |
[libc++][P0202] Marked algorithms copy/copy_n/copy_if/copy_backward constexpr Thanks to Michael Park for the patch. Differential Revision: https://reviews.llvm.org/D68837 | 6 年前 | |
[libc++] Remove uses of printf in some test support headers In the test suite, we generally don't use printf or other reporting utilities. It's not that it wouldn't be useful, it's just that some platforms don't support IO. Instead, we try to keep test cases small and self-contained so that we can reasonably easily reproduce failures locally and debug them. This patch removes printf in some of the last places in the test suite that used it. The only remaining places are in a deque test and in the filesystem tests. The filesystem tests are arguably fine to keep using IO, since we're testing <filesystem>. The deque test will be handled separately. Differential Revision: https://reviews.llvm.org/D114282 | 4 年前 | |
[libc++] Implement P0655R1 visit<R>: Explicit Return Type for visit Differential Revision: https://reviews.llvm.org/D92044 | 5 年前 |