[libcxx-commits] [PATCH] D103734: [libcxx][modularisation] moves <utility> content out of <type_traits>
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Jun 21 08:07:27 PDT 2021
ldionne requested changes to this revision.
ldionne added inline comments.
This revision now requires changes to proceed.
================
Comment at: libcxx/include/__utility/swap.h:33
+template <class _Tp>
+using __swap_result_t = typename enable_if<is_move_constructible<_Tp>::value && is_move_assignable<_Tp>::value>::type;
+#else
----------------
Could you make this change as a separate NFC commit? I really want those modularization changes to contain no change whatsoever to the code itself. By the way, did you make any other change to the code except the `std::forward` => `static_cast<T&&>` transformation?
================
Comment at: libcxx/include/type_traits:3869
__invoke(_Fp&& __f, _A0&& __a0, _Args&& ...__args)
-_LIBCPP_INVOKE_RETURN((_VSTD::forward<_A0>(__a0).*__f)(_VSTD::forward<_Args>(__args)...))
----------------
I'd like to make this change as a separate NFC change, for the reason stated above.
================
Comment at: libcxx/test/support/poisoned_hash_helper.h:12
-#include <type_traits>
+#include <__utility/move.h> // TODO: replace with <utility> when std::hash is moved out of the header
#include <cassert>
----------------
We should never be including implementation detail headers from the test suite. If we can't include `<utility>` right now, we should do the pre-requisite task before landing this patch.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D103734/new/
https://reviews.llvm.org/D103734
More information about the libcxx-commits
mailing list