Subject: [SG10] Example for __cpp_lib_byte
From: Jonathan Wakely (cxx_at_[hidden])
Date: 2017-10-20 12:46:59
Would something like this be suitable?
#if __cpp_lib_byte >= 201603
using byte_type = std::byte;
using byte_type = unsigned char;
alignas(T) byte_type rawbytes[sizeof(T)];
Both forms will work, but the std::byte version might be preferred to
ensure that no arithmetic operations are accidentally performed on the
values. The desired type-safety would only be enforced on
implementations that support std::byte, but if the rest of the code is
the same you can be fairly confident there's no arithmetic even when
the type is unsigned char.
SG10 list run by firstname.lastname@example.org