Skip to content

Commit

Permalink
Some more wording stuff.
Browse files Browse the repository at this point in the history
  • Loading branch information
brevzin committed Nov 5, 2024
1 parent 6758557 commit ca75943
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 20 deletions.
25 changes: 11 additions & 14 deletions 2996_reflection/p2996r8.html
Original file line number Diff line number Diff line change
Expand Up @@ -8981,31 +8981,28 @@ <h3 class="unnumbered" id="meta.reflection.define_aggregate-reflection-class-def
represented by
<code class="sourceCode cpp"><span class="math inline"><em>t</em></span><sub><span class="math inline"><em>K</em></span></sub></code>.</li>
<li><span class="marginalizedparent"><a class="marginalized" href="#pnum_380" id="pnum_380">(7.6)</a></span>
Non-static data members corresponding to reflections
A non-static data member corresponding to a reflection
<code class="sourceCode cpp"><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub></code> for which <code class="sourceCode cpp"><span class="math inline"><em>o</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">.</span>no_unique_address</code>
is <code class="sourceCode cpp"><span class="kw">true</span></code> are
is <code class="sourceCode cpp"><span class="kw">true</span></code> is
declared with the attribute <code class="sourceCode cpp"><span class="op">[[</span><span class="at">no_unique_address</span><span class="op">]]</span></code>.</li>
<li><span class="marginalizedparent"><a class="marginalized" href="#pnum_381" id="pnum_381">(7.7)</a></span>
Non-static data members corresponding to reflections
A non-static data member corresponding to a reflection
<code class="sourceCode cpp"><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub></code> for which <code class="sourceCode cpp"><span class="math inline"><em>o</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">.</span>bit_width</code>
contains a value are declared as bit-fields whose width is that
contains a value is declared as a bit-field whose width is that
value.</li>
<li><span class="marginalizedparent"><a class="marginalized" href="#pnum_382" id="pnum_382">(7.8)</a></span>
Non-static data members corresponding to reflections
A non-static data member corresponding to a reflection
<code class="sourceCode cpp"><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub></code> for which <code class="sourceCode cpp"><span class="math inline"><em>o</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">.</span>alignment</code>
contains a value are declared with the
contains a value is declared with the
<code class="sourceCode cpp"><em>alignment-specifier</em></code> <code class="sourceCode cpp"><span class="kw">alignas</span><span class="op">(</span><span class="math inline"><em>o</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">.</span>alignment<span class="op">)</span></code>.</li>
<li><span class="marginalizedparent"><a class="marginalized" href="#pnum_383" id="pnum_383">(7.9)</a></span>
Non-static data members corresponding to reflections
<code class="sourceCode cpp"><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub></code> are declared with
names determined as follows:
A non-static data member corresponding to a reflection
<code class="sourceCode cpp"><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub></code> is declared with a
name determined as follows:
<ul>
<li>If <code class="sourceCode cpp"><span class="math inline"><em>o</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">.</span>bit_width</code>
contains the value zero, the non-static data member is declared without
<li>If <code class="sourceCode cpp"><span class="math inline"><em>o</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">.</span>name</code>
does not contain a value, the non-static data member is declared without
a name.</li>
<li>Otherwise, if <code class="sourceCode cpp">has_identifier<span class="op">(</span><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">)</span></code>
is <code class="sourceCode cpp"><span class="kw">false</span></code>,
the non-static data member is unnamed.</li>
<li>Otherwise, the name of the non-static data member is the identifier
determined by the character sequence encoded by <code class="sourceCode cpp">u8identifier_of<span class="op">(</span><span class="math inline"><em>r</em></span><sub><span class="math inline"><em>K</em></span></sub><span class="op">)</span></code>
in UTF-8.</li>
Expand Down
11 changes: 5 additions & 6 deletions 2996_reflection/reflection.md
Original file line number Diff line number Diff line change
Expand Up @@ -5444,12 +5444,11 @@ Produces an injected declaration `$D$` ([expr.const]) that provides a definition
- [#.#]{.pnum} If `$C$` is a specialization of a class template `$T$`, then `$D$` is is an explicit specialization of `$T$`.
- [#.#]{.pnum} `$D$` contains a public non-static data member corresponding to each reflection value `@$r$~$K$~@` in `mdescrs`. For every other `@$r$~$L$~@` in `mdescrs` such that `$K$ < $L$`, the declaration of `@$r$~$K$~@` precedes the declaration of `@$r$~$L$~@`.
- [#.#]{.pnum} The non-static data member corresponding to each `@$r$~$K$~@` is declared with the type or `$typedef-name$` represented by `@$t$~$K$~@`.
- [#.#]{.pnum} Non-static data members corresponding to reflections `@$r$~$K$~@` for which `@[email protected]_unique_address` is `true` are declared with the attribute `[[no_unique_address]]`.
- [#.#]{.pnum} Non-static data members corresponding to reflections `@$r$~$K$~@` for which `@[email protected]_width` contains a value are declared as bit-fields whose width is that value.
- [#.#]{.pnum} Non-static data members corresponding to reflections `@$r$~$K$~@` for which `@[email protected]` contains a value are declared with the `$alignment-specifier$` `alignas(@[email protected])`.
- [#.#]{.pnum} Non-static data members corresponding to reflections `@$r$~$K$~@` are declared with names determined as follows:
- If `@[email protected]_width` contains the value zero, the non-static data member is declared without a name.
- Otherwise, if `has_identifier(@$r$~$K$~@)` is `false`, the non-static data member is unnamed.
- [#.#]{.pnum} A non-static data member corresponding to a reflection `@$r$~$K$~@` for which `@[email protected]_unique_address` is `true` is declared with the attribute `[[no_unique_address]]`.
- [#.#]{.pnum} A non-static data member corresponding to a reflection `@$r$~$K$~@` for which `@[email protected]_width` contains a value is declared as a bit-field whose width is that value.
- [#.#]{.pnum} A non-static data member corresponding to a reflection `@$r$~$K$~@` for which `@[email protected]` contains a value is declared with the `$alignment-specifier$` `alignas(@[email protected])`.
- [#.#]{.pnum} A non-static data member corresponding to a reflection `@$r$~$K$~@` is declared with a name determined as follows:
- If `@[email protected]` does not contain a value, the non-static data member is declared without a name.
- Otherwise, the name of the non-static data member is the identifier determined by the character sequence encoded by `u8identifier_of(@$r$~$K$~@)` in UTF-8.
- [#.#]{.pnum} If `$C$` is a union type for which any of its members are not trivially default constructible, then it has a user-provided default constructor which has no effect.
- [#.#]{.pnum} If `$C$` is a union type for which any of its members are not trivially default destructible, then it has a user-provided default destructor which has no effect.
Expand Down

0 comments on commit ca75943

Please sign in to comment.