================
@@ -1826,6 +1827,12 @@ The following type trait primitives are supported by 
Clang. Those traits marked
   functionally equivalent to copying the underlying bytes and then dropping the
   source object on the floor. This is true of trivial types and types which
   were made trivially relocatable via the ``clang::trivial_abi`` attribute.
+* ``__builtin_is_cpp_trivially_relocatable`` (C++): Returns true if an object
+  is trivially relocatable, as defined by the C++26 standard [meta.unary.prop].
+  Note that the caller code should ensure that if the object is polymorphic,
+  the dynamic type is of the most derived type.
----------------
cor3ntin wrote:

I would be happy doing that but I'm afraid it would break existing code.
Right now 

__is_cpp_trivially_relocatable => standard behavior
__is_trivially_relocatable => standard behavior + trivial_abi


https://github.com/llvm/llvm-project/pull/127636
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to