std::align_val_t
Min standard notice:
Header: <new>
Both new-expression and delete-expression, when used with objects whose alignment requirement is greater than STDCPP_DEFAULT_NEW_ALIGNMENT, pass that alignment requirement as an argument of type std::align_val_t to the selected allocation/deallocation function.
# Declarations
enum class align_val_t : std::size_t {};
(since C++17)
# Notes
Alignment (as obtained by alignof) has the type std::size_t, but placement forms of allocation and deallocation functions that take std::size_t as an additional parameter are already in use, so this type is used instead.