Skip to content

Commit ec8aa60

Browse files
committed
[intro.races] Clarify 'synchronization operation'.
Fixes #1611 and CWG 2297.
1 parent 0059794 commit ec8aa60

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

source/intro.tex

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1211,9 +1211,12 @@
12111211
memory location.
12121212

12131213
\pnum
1214-
The library defines a number of atomic operations\iref{atomics} and
1215-
operations on mutexes\iref{thread} that are specially identified as
1216-
synchronization operations. These operations play a special role in making
1214+
The library identifies certain operations as
1215+
\defnx{synchronization operations}{synchronization operation}, as specified
1216+
in the \sync element
1217+
(\ref{support.signal}, \ref{util.smartptr.shared.atomic}, \ref{atomics.order},
1218+
\ref{atomics.fences}, Clause~\ref{thread}).
1219+
These operations play a special role in making
12171220
assignments in one thread visible to another. A synchronization operation on one
12181221
or more memory locations is either a consume operation, an acquire operation, a
12191222
release operation, or both an acquire and release operation. A synchronization

0 commit comments

Comments
 (0)