File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 36673667the address of an unspecified byte of storage
36683668occupied by the complete object of that subobject.
36693669
3670+ \pnum
3671+ The \defnx {constituent values}{constituent value} of an object $ o$ are
3672+ \begin {itemize }
3673+ \item
3674+ if $ o$ has scalar type, the value of $ o$ ;
3675+ \item
3676+ otherwise, the constituent values of any direct subobjects of $ o$
3677+ other than inactive union members.
3678+ \end {itemize }
3679+ The \defnx {constituent references}{constituent reference} of an object $ o$ are
3680+ \begin {itemize }
3681+ \item
3682+ any direct members of $ o$ that have reference type, and
3683+ \item
3684+ the constituent references of any direct subobjects of $ o$
3685+ other than inactive union members.
3686+ \end {itemize }
3687+
36703688\pnum
36713689Some operations are described as
36723690\defnx {implicitly creating objects}{object!implicit creation}
Original file line number Diff line number Diff line change 82918291 conditional-expression
82928292\end {bnf }
82938293
8294- \pnum
8295- The \defnx {constituent values}{constituent value} of an object $ o$ are
8296- \begin {itemize }
8297- \item
8298- if $ o$ has scalar type, the value of $ o$ ;
8299- \item
8300- otherwise, the constituent values of any direct subobjects of $ o$
8301- other than inactive union members.
8302- \end {itemize }
8303- The \defnx {constituent references}{constituent reference} of an object $ o$ are
8304- \begin {itemize }
8305- \item
8306- any direct members of $ o$ that have reference type, and
8307- \item
8308- the constituent references of any direct subobjects of $ o$
8309- other than inactive union members.
8310- \end {itemize }
8311-
83128294\pnum
83138295The constituent values and constituent references of
83148296a variable \tcode {x} are defined as follows:
83158297\begin {itemize }
83168298\item
83178299If \tcode {x} declares an object,
8318- the constituent values and references of that object are
8300+ the constituent values and references of that object\iref { intro.object } are
83198301constituent values and references of \tcode {x}.
83208302\item
83218303If \tcode {x} declares a reference,
Original file line number Diff line number Diff line change 11421142\end {note }
11431143
11441144\pnum
1145- In a function whose return type is a reference,
1145+ In a function
11461146other than an invented function for \tcode {std::is_convertible}\iref {meta.rel },
1147- a \tcode {return} statement that binds the returned reference to
1148- a temporary expression\iref {class.temporary } is ill-formed.
1147+ a \tcode {return} statement that binds
1148+ \begin {itemize }
1149+ \item a returned reference or
1150+ \item a constituent reference\iref {intro.object } of a returned object
1151+ \end {itemize }
1152+ to a temporary expression\iref {class.temporary } is ill-formed.
11491153\begin {example }
11501154\begin {codeblock }
11511155auto&& f1() {
You can’t perform that action at this time.
0 commit comments