diff --git a/source/declarations.tex b/source/declarations.tex index 446aebd3aa..caf5af06cf 100644 --- a/source/declarations.tex +++ b/source/declarations.tex @@ -4296,7 +4296,7 @@ \pnum \begin{note} -A local variable cannot be odr-used\iref{term.odr.use} +A block variable with automatic storage duration cannot be odr-used\iref{term.odr.use} in a default argument. \end{note} \begin{example} diff --git a/source/exceptions.tex b/source/exceptions.tex index 8b6b62d651..75f8cf8eb6 100644 --- a/source/exceptions.tex +++ b/source/exceptions.tex @@ -376,7 +376,7 @@ constructed, but not yet destroyed, since the try block was entered. If an exception is thrown during the destruction of temporaries or -local variables for a \keyword{return} statement\iref{stmt.return}, +block variables for a \keyword{return} statement\iref{stmt.return}, the destructor for the returned object (if any) is also invoked. The objects are destroyed in the reverse order of the completion of their construction. @@ -398,11 +398,11 @@ } \end{codeblock} At \#1, the returned object of type \tcode{A} is constructed. -Then, the local variable \tcode{b} is destroyed\iref{stmt.jump}. -Next, the local variable \tcode{y} is destroyed, +Then, the block variable \tcode{b} is destroyed\iref{stmt.jump}. +Next, the block variable \tcode{y} is destroyed, causing stack unwinding, resulting in the destruction of the returned object, -followed by the destruction of the local variable \tcode{a}. +followed by the destruction of the block variable \tcode{a}. Finally, the returned object is constructed again at \#2. \end{example} diff --git a/source/locales.tex b/source/locales.tex index a791026f92..b1c2004ac1 100644 --- a/source/locales.tex +++ b/source/locales.tex @@ -2233,7 +2233,7 @@ \begin{description} \stage{1} -The function initializes local variables via +The function initializes variables with automatic storage duration via \begin{codeblock} fmtflags flags = str.flags(); fmtflags basefield = (flags & ios_base::basefield); @@ -2282,7 +2282,7 @@ \stage{2} If \tcode{in == end} then stage 2 terminates. Otherwise a \tcode{charT} is taken from \tcode{in} and -local variables are initialized as if by +variables with automatic storage duration are initialized as if by \begin{codeblock} char_type ct = *in; char c = src[find(atoms, atoms + sizeof(src) - 1, ct) - atoms]; @@ -2531,7 +2531,8 @@ \effects Writes characters to the sequence \tcode{out}, formatting \tcode{val} as desired. -In the following description, \tcode{loc} names a local variable initialized as +In the following description, \tcode{loc} names a variable +with automatic storage duration initialized as \begin{codeblock} locale loc = str.getloc(); \end{codeblock} @@ -2575,7 +2576,8 @@ \begin{description} \stage{1} The first action of stage 1 is to determine a conversion specifier. -The tables that describe this determination use the following local variables +The tables that describe this determination use the following variables +with automatic storage duration \begin{codeblock} fmtflags flags = str.flags(); @@ -2672,7 +2674,7 @@ use_facet>(loc).widen(c) \end{codeblock} -A local variable \tcode{punct} is initialized via +A variable \tcode{punct} with automatic storage duration is initialized via \begin{codeblock} const numpunct& punct = use_facet>(loc); \end{codeblock} @@ -2685,7 +2687,7 @@ Decimal point characters(.) are replaced by \tcode{punct.decimal_point()}. \stage{3} -A local variable is initialized as +A variable with automatic storage duration is initialized as \begin{codeblock} fmtflags adjustfield = (flags & (ios_base::adjustfield)); \end{codeblock} diff --git a/source/regex.tex b/source/regex.tex index fd6292e34e..f5dbb77297 100644 --- a/source/regex.tex +++ b/source/regex.tex @@ -3398,7 +3398,7 @@ \begin{itemdescr} \pnum \effects -Constructs a local variable \tcode{start} of type \tcode{BidirectionalIterator} and +Constructs a variable \tcode{start} of type \tcode{BidirectionalIterator} with automatic storage duration and initializes it with the value of \tcode{match[0].second}. \pnum @@ -3743,8 +3743,8 @@ \begin{itemdescr} \pnum \effects -Constructs a local variable \tcode{prev} of -type \tcode{position_iterator}, initialized with the value +Constructs a variable \tcode{prev} of +type \tcode{position_iterator} with automatic storage duration, initialized with the value of \tcode{position}. \pnum diff --git a/source/statements.tex b/source/statements.tex index 9940ee28de..4afca05d16 100644 --- a/source/statements.tex +++ b/source/statements.tex @@ -804,7 +804,7 @@ \end{bnf} \pnum -\indextext{local variable!destruction of}% +\indextext{block variable with automatic storage duration!destruction of}% \indextext{scope!destructor and exit from}% \begin{note} On exit from a scope (however accomplished), objects with automatic storage @@ -946,7 +946,7 @@ The copy-initialization of the result of the call is sequenced before the destruction of temporaries at the end of the full-expression established by the operand of the \tcode{return} statement, which, in turn, is sequenced -before the destruction of local variables\iref{stmt.jump} of the block +before the destruction of block variables with automatic storage duration\iref{stmt.jump} of the block enclosing the \tcode{return} statement. \pnum