llvm-project/libcxx
Konstantin Varlamov 68072a7166 [libc++] P0433R2: test that deduction guides are properly SFINAEd away.
Deduction guides for containers should not participate in overload
resolution when called with certain incorrect types (e.g. when called
with a template argument in place of an `InputIterator` that doesn't
qualify as an input iterator). Similarly, class template argument
deduction should not select `unique_ptr` constructors that take a
a pointer.

The tests try out every possible incorrect parameter (but never more
than one incorrect parameter in the same invocation).

Also add deduction guides to the synopsis for associative and unordered
containers (this was accidentally omitted from [D112510](https://reviews.llvm.org/D112510)).

Differential Revision: https://reviews.llvm.org/D112904
2021-11-09 09:32:24 -08:00
..
benchmarks Ensure newlines at the end of files (NFC) 2021-10-23 08:45:29 -07:00
cmake [CMake] Cache the compiler-rt library search results 2021-10-27 17:53:03 -07:00
docs [libc++] P0433R2: test that deduction guides are properly SFINAEd away. 2021-11-09 09:32:24 -08:00
include [libc++] P0433R2: test that deduction guides are properly SFINAEd away. 2021-11-09 09:32:24 -08:00
lib Revert "[libc++] Always define a key function for std::bad_function_call in the dylib" 2021-11-08 00:44:47 -08:00
src [libcxx] Add a dependency on unwind in cxx_static, if LIBCXXABI_USE_LLVM_UNWINDER is set 2021-11-09 17:44:48 +02:00
test [libc++] P0433R2: test that deduction guides are properly SFINAEd away. 2021-11-09 09:32:24 -08:00
utils [libc++] [test] Eliminate the libcpp-no-if-constexpr feature flag. 2021-11-08 16:58:47 -05:00
.clang-format [libc++] Update clang-format to C++20. 2021-10-30 12:50:57 +02:00
.gitignore [libcxx] Fix .gitignore to not exclude test directories 2020-03-25 17:52:23 -07:00
CMakeLists.txt [CMake] Cache the compiler-rt library search results 2021-10-27 17:53:03 -07:00
CREDITS.TXT [NFC] Add contributor name to CREDITS.TXT 2021-09-29 14:48:32 -04:00
LICENSE.TXT
TODO.TXT [libc++] Disallow volatile types in std::allocator 2021-09-22 11:47:38 -04:00
appveyor-reqs-install.cmd
appveyor.yml