[clang] [clang] Implement a bitwise_copyable builtin type trait. (PR #86512)

Sam McCall via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 27 10:36:01 PDT 2024


================
@@ -526,6 +526,7 @@ TYPE_TRAIT_2(__is_layout_compatible, IsLayoutCompatible, KEYCXX)
 #include "clang/Basic/TransformTypeTraits.def"
 
 // Clang-only C++ Type Traits
+TYPE_TRAIT_1(__is_bitwise_copyable, IsBitwiseCopyable, KEYCXX)
----------------
sam-mccall wrote:

naming thought #1 (sorry): 

if we're going to use "bit" here, you might consider e.g. `__is_bit_copyable` rather than "bitwise", for consistency with `std::bit_cast` which is closely related to this concept.

(In a vacuum I do like "bitwise" better, though "bytewise_copyable" seems more accurate: the copy (noun) is bit-for-bit but the copy (verb) is byte-by-byte)

https://github.com/llvm/llvm-project/pull/86512


More information about the cfe-commits mailing list