[libcxx-commits] [libcxx] [libc++] Replace `__compressed_pair` with `[[no_unique_address]]` (PR #76756)
Louis Dionne via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Jul 25 08:34:20 PDT 2024
================
@@ -68,8 +68,9 @@ LLVM 21
ABI Affecting Changes
---------------------
-- TODO
-
+- The internal structure ``__compressed_pair`` has been replaced with ``[[no_unique_address]]``. This change results in
+ empty final types being placed at the beginning of the object instead of where the beginning of the
+ ``__compressed_pair`` subobject was. This is only observable by checking the address of the subobject.
----------------
ldionne wrote:
We need to call out the ABI break on the Microsoft ABI, and we should ping @llvm/libcxx-vendors (done now).
This shouldn't be a big deal since we don't provide ABI stability on Microsoft, but it's still good to call it out since this may be a rather large break.
https://github.com/llvm/llvm-project/pull/76756
More information about the libcxx-commits
mailing list