Skip to content

Commit a05b963

Browse files
AlisdairMtkoeppe
authored andcommitted
[basic.life] Move definition of before and after from bottom to top of subclause
The last paragraph of this subclause changes the definition of English words used throughout the preceding paragraphs. While it might be preferable to replace all such usage with the new definitions, that would be a Core issue, see paragraph 6 for an example of awkward usage. Hence, we move the redefinition to the start of the subclause so we know how to read this text from the start.
1 parent 3f41cf8 commit a05b963

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

source/basic.tex

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3455,6 +3455,10 @@
34553455

34563456
\rSec2[basic.life]{Lifetime}
34573457

3458+
\pnum
3459+
In this subclause, ``before'' and ``after'' refer to the ``happens before''
3460+
relation\iref{intro.multithread}.
3461+
34583462
\pnum
34593463
\indextext{object lifetime|(}%
34603464
The \defn{lifetime} of an object or reference is a runtime property of the
@@ -3630,6 +3634,12 @@
36303634
\keyword{typeid}.
36313635
\end{itemize}
36323636

3637+
\begin{note}
3638+
Therefore, undefined behavior results
3639+
if an object that is being constructed in one thread is referenced from another
3640+
thread without adequate synchronization.
3641+
\end{note}
3642+
36333643
\pnum
36343644
An object $o_1$ is \defn{transparently replaceable} by an object $o_2$ if
36353645
\begin{itemize}
@@ -3740,15 +3750,6 @@
37403750
}
37413751
\end{codeblock}
37423752
\end{example}
3743-
3744-
\pnum
3745-
In this subclause, ``before'' and ``after'' refer to the ``happens before''
3746-
relation\iref{intro.multithread}.
3747-
\begin{note}
3748-
Therefore, undefined behavior results
3749-
if an object that is being constructed in one thread is referenced from another
3750-
thread without adequate synchronization.
3751-
\end{note}
37523753
\indextext{object lifetime|)}
37533754

37543755
\rSec2[basic.indet]{Indeterminate and erroneous values}

0 commit comments

Comments
 (0)