Skip to content

Commit c4dbe74

Browse files
huixie90ldionne
andauthored
Update libcxx/docs/ABIGuarantees.rst
Co-authored-by: Louis Dionne <[email protected]>
1 parent 4e6c7f2 commit c4dbe74

File tree

1 file changed

+1
-2
lines changed

1 file changed

+1
-2
lines changed

libcxx/docs/ABIGuarantees.rst

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -209,8 +209,7 @@ resulting in an ABI break.
209209
------------------------------------------
210210
This flag changes the implementation of ``atomic::wait()`` and ``atomic::notify_one()/notify_all()`` to use the
211211
native atomic wait/notify operations on platforms that support them based on the size of the atomic type, instead
212-
of the type itself. This changes the behaviour of ``atomic::wait()`` and ``atomic::notify_one()/notify_all()`` in
213-
some cases, resulting in an ABI break.
212+
of the type itself. This means for example that a type with ``sizeof(T) == 4`` on Linux that doesn't have padding bytes would be able to use the underlying platform's atomic wait primitive, which is otherwise only used for ``int32_t``. Since the whole program must use the same implementation for correctness, changing this is an ABI break since libc++ supports linking against TUs that were compiled against older versions of the library.
214213

215214

216215
inline namespaces

0 commit comments

Comments
 (0)