Skip to content

Commit 1b35012

Browse files
committed
Incorporated review feedback.
1 parent 567e3a1 commit 1b35012

File tree

1 file changed

+22
-20
lines changed

1 file changed

+22
-20
lines changed

partial-spec-wording.html

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -91,36 +91,36 @@
9191
for (var n = 0; n < notes.length; ++n) {
9292
var node = notes[n];
9393
node.insertAdjacentHTML("beforebegin",
94-
"<span>[<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>Note:<\/i> <\/span>");
94+
"<span>[&nbsp;<i>Note:<\/i> <\/span>");
9595
node.insertAdjacentHTML("beforeEnd",
96-
"<span> &mdash;<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>end note<\/i><span style=\"white-space:nowrap\">&ThinSpace;<\/span>]<\/span>");
96+
"<span> &mdash;&nbsp;<i>end note<\/i>&nbsp;]<\/span>");
9797
}
9898

9999
var notes_ins = document.getElementsByClassName("stdnote-ins");
100100
for (var n = 0; n < notes_ins.length; ++n) {
101101
var node = notes_ins[n];
102102
node.insertAdjacentHTML("beforebegin",
103-
"<span><ins>[<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>Note:<\/i> <\/ins><\/span>");
103+
"<span><ins>[&nbsp;<i>Note:<\/i> <\/ins><\/span>");
104104
node.insertAdjacentHTML("beforeEnd",
105-
"<span><ins> &mdash;<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>end note<\/i><span style=\"white-space:nowrap\">&ThinSpace;<\/span>]<\/ins><\/span>");
105+
"<span><ins> &mdash;&nbsp;<i>end note<\/i>&nbsp;]<\/ins><\/span>");
106106
}
107107

108108
var examples = document.getElementsByClassName("stdexample");
109109
for (var n = 0; n < examples.length; ++n) {
110110
var node = examples[n];
111111
node.insertAdjacentHTML("beforebegin",
112-
"<span>[<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>Example:<\/i> <\/span>");
112+
"<span>[&nbsp;<i>Example:<\/i> <\/span>");
113113
node.insertAdjacentHTML("beforeEnd",
114-
"<span> &mdash;<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>end example<\/i><span style=\"white-space:nowrap\">&ThinSpace;<\/span>]<\/span>");
114+
"<span> &mdash;&nbsp;<i>end example<\/i>&nbsp;]<\/span>");
115115
}
116116

117117
var examples_ins = document.getElementsByClassName("stdexample-ins");
118118
for (var n = 0; n < examples_ins.length; ++n) {
119119
var node = examples_ins[n];
120120
node.insertAdjacentHTML("beforebegin",
121-
"<span><ins>[<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>Example:<\/i> <\/ins><\/span>");
121+
"<span><ins>[&nbsp;<i>Example:<\/i> <\/ins><\/span>");
122122
node.insertAdjacentHTML("beforeEnd",
123-
"<span><ins> &mdash;<span style=\"white-space:nowrap\">&ThinSpace;<\/span><i>end example<\/i><span style=\"white-space:nowrap\">&ThinSpace;<\/span>]<\/ins><\/span>");
123+
"<span><ins> &mdash;&nbsp;<i>end example<\/i>&nbsp;]<\/ins><\/span>");
124124
}
125125

126126
var references = document.getElementsByClassName("stdref");
@@ -143,11 +143,11 @@ <h1>Generalized wording for partial specializations</h1>
143143
<table class="frontmatter" border="0" cellpadding="0" cellspacing="0" width="619">
144144
<tr>
145145
<td align="left" valign="top">Document number:</td>
146-
<td>P2096R0</td>
146+
<td>D2096R1</td>
147147
</tr>
148148
<tr>
149149
<td align="left" valign="top">Date:</td>
150-
<td>2020-02-01</td>
150+
<td>2020-03-23</td>
151151
</tr>
152152
<tr>
153153
<td align="left" valign="top">Project:</td>
@@ -174,6 +174,10 @@ <h2><a id="TableOfContents">Table of Contents</a></h2>
174174
</ol>
175175

176176
<h2><a id="RevisionHistory">Revision History</a></h2>
177+
<h3>Revision 1 - 2020-03-23</h3>
178+
<ul>
179+
<li>Incorporated review feedback from CWG telecon.</li>
180+
</ul>
177181
<h3>Revision 0 - 2020-02-01</h3>
178182
<ul>
179183
<li>Initial draft.</li>
@@ -227,12 +231,12 @@ <h2><a id="Wording">Wording</a></h2>
227231

228232
<p>Modify &sect;13.7 <a class="stdref">temp.decls</a> paragraph 1:</p>
229233
<blockquote class="std">
230-
<div>A <var>template-id</var>, that is, the <var>template-name</var> followed by a <var>template-argument-list</var> shall not be specified in the <del>declaration</del><ins><var>declaration</var></ins> of a primary template declaration.
231-
<div class="stdexample"><pre class="example">
234+
<div><ins><span>[&nbsp<i>Note:</i> </span></ins>A <var>template-id</var><del>,</del> <ins>(</ins>that is, <del>the</del><ins>a</ins> <var>template-name</var> followed by a <var>template-argument-list</var><ins>)</ins> <del>shall not</del><ins>cannot</ins> be <del>specified in the declaration of</del><ins>the declared name of</ins> a primary template declaration.
235+
<div><del><div class="stdexample"><pre class="example">
232236
<code>template&lt;class T1, class T2, int I&gt; class A&lt;T1, T2, I&gt; { }; // <span class="comment">error</span>
233237
template&lt;class T1, int I&gt; void sort&lt;T1, I&gt;(T1 data[I]); // <span class="comment">error</span></code>
234-
</pre></div>
235-
<span class="stdnote">However, this syntax is allowed in<del> class template</del> partial specializations (<a class="stdref">temp.class.spec</a>).</span></div>
238+
</pre></div></del></div>
239+
<del><span>[&nbsp<i>Note:</i> </span></del>However, this syntax is allowed in<del> class template</del> partial specializations (<a class="stdref">temp.class.spec</a>).<span> &mdash;&nbsp<i>end note</i>&nbsp]</span></div>
236240
</blockquote>
237241

238242
<p>Rename &sect;13.7.5 <a class="stdref">temp.class.spec</a>:</p>
@@ -242,18 +246,16 @@ <h2><a id="Wording">Wording</a></h2>
242246

243247
<p>Modify &sect;13.7.5 <a class="stdref">temp.class.spec</a> paragraph 1:</p>
244248
<blockquote class="std">
245-
<div>A <dfn>primary<del> class</del> template</dfn> declaration is one in which the<del> class</del> template name is an identifier.
246-
A template declaration in which the<del> class</del> template name is a <var>simple-template-id</var> is a <dfn>partial specialization</dfn> of the<del> class</del> template named in the <var>simple-template-id</var>.
249+
<div>A <dfn>primary<del> class</del> template</dfn> declaration is one in which the<del> class template name</del><ins><var>template-name</var></ins> is <del>an identifier</del><ins>not followed by a <var>template-argument-list</var></ins>.
250+
A template declaration in which the<del> class</del> template name is a <var>simple-template-id</var> is a <dfn>partial specialization</dfn> of the<del> class</del> template named in the <var>simple-template-id</var><ins>, which shall be a class or variable template</ins>.
247251
A partial specialization of a<del> class</del> template provides an alternative definition of the template that is used instead of the primary definition when the arguments in a specialization match those given in the partial specialization (<a class="stdref">temp.class.spec.match</a>).
248252
The primary template shall be declared before any<ins> partial</ins> specializations of that template.
249-
A partial specialization shall be declared before the first use of a<del> class</del> template specialization that would make use of the partial specialization as the result of an implicit or explicit instantiation in every translation unit in which such a use occurs; no diagnostic is required.
250-
<ins>Only class templates and variable templates may have partial specializations.</ins></div>
253+
A partial specialization shall be declared before the first use of a<del> class</del> template specialization that would make use of the partial specialization as the result of an implicit or explicit instantiation in every translation unit in which such a use occurs; no diagnostic is required.</div>
251254
</blockquote>
252255

253256
<p>Modify &sect;13.7.5 <a class="stdref">temp.class.spec</a> paragraph 2:</p>
254257
<blockquote class="std">
255-
<div>Each<del> class template</del> partial specialization is a distinct template<del> and</del><ins>.</ins>
256-
<del>d</del><ins>D</ins>efinitions shall be provided for the members of a<ins> class</ins> template partial specialization (<a class="stdref">temp.class.spec.mfunc</a>).</div>
258+
<div>Each<del> class template</del> partial specialization is a distinct template<del> and definitions shall be provided for the members of a template partial specialization (<a class="stdref">temp.class.spec.mfunc</a>)</del>.</div>
257259
</blockquote>
258260

259261
<p>Modify &sect;13.7.5 <a class="stdref">temp.class.spec</a> paragraph 4:</p>

0 commit comments

Comments
 (0)