mirror of
https://github.com/llvm-mirror/libcxx.git
synced 2025-10-20 13:23:43 +08:00
[libc++][test] Change IsSmallObject's calculation for std::any's small object buffer
`sizeof(std::any) - sizeof(void*)` is correct for both libc++ and the MSVC standard library. Differential Revision: https://reviews.llvm.org/D68756 git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@374407 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -26,7 +26,7 @@ namespace std { namespace experimental {} }
|
||||
template <class T>
|
||||
struct IsSmallObject
|
||||
: public std::integral_constant<bool
|
||||
, sizeof(T) <= (sizeof(void*)*3)
|
||||
, sizeof(T) <= sizeof(std::any) - sizeof(void*)
|
||||
&& std::alignment_of<void*>::value
|
||||
% std::alignment_of<T>::value == 0
|
||||
&& std::is_nothrow_move_constructible<T>::value
|
||||
|
Reference in New Issue
Block a user