Skip to content

Commit 037f5da

Browse files
committed
Add N4407 with cleaned up formatting
1 parent 6c7dcb9 commit 037f5da

8 files changed

+157
-274
lines changed

README.md

+7-17
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,21 @@
1-
Document Number: N4353
2-
Date: 2015-01-08
1+
Document Number: N4408
2+
Date: 2015-04-10
33
Revises:
44
Project: Programming Language C++
55
Project Number: TS 19570
66
Reply-to: Jared Hoberock
77
NVIDIA Corporation
88
99

10-
# Parallelism TS Editor's Report, pre-DTS ballot
10+
# Parallelism TS Editor's Report, pre-Lenexa mailing
1111

12-
N4352 is the latest Parallelism TS Working Draft. It contains editorial changes to the Parallelism TS as directed by an editing committee appointed during the Urbana meeting to approve the correctness of the Parallelism TS working paper.
12+
N4407 is the latest Parallelism TS Working Draft. It contains editorial changes to the Parallelism TS to address whitespace and other formatting issues.
1313

14-
N4352 updates the previous draft, N4310, published in the post-Urbana mailing.
14+
N4407 updates the previous draft, N4352, published in the midterm mailing.
1515

16-
N4354 is document N4352 reformatted as a DTS ballot document. It updates N4312, which was published in the post-Urbana mailing.
16+
N4409 is document N4407 reformatted as a TS document. It updates N4354, which was published in the midterm mailing.
1717

1818
## Editorial Changes
1919

20-
1. A missing signature for `execution_policy::type` was added to the synopsis in Section 2.7.
21-
2. A missing `ExecutionPolicy` overload signature for `for_each_n` was added to the synopsis in Section 4.3.1.
22-
3. Missing `ExecutionPolicy` overload signatures for `reduce`, `exclusive_scan`, `inclusive_scan`, `transform_reduce`, `transform_exclusive_scan`, and `transform_inclusive_scan` were added to the synopsis in Section 4.4.1.
23-
24-
## Acknowledgements
25-
26-
Thanks to the review committee, who identified these issues.
27-
28-
* Hans Boehm
29-
* Lawrence Crowl
30-
* Alisdair Meredith
20+
Eliminated spurious whitespace and superfluous paragraph numbers.
3121

algorithms.html

+65-104
Original file line numberDiff line numberDiff line change
@@ -389,13 +389,11 @@ <h1>Header <code>&lt;experimental/algorithm&gt;</code> synopsis</h1>
389389
<h1>For each</h1>
390390

391391
<cxx-function>
392-
<cxx-signature>
393-
template&lt;class ExecutionPolicy,
394-
class InputIterator, class Function&gt;
395-
void for_each(ExecutionPolicy&amp;&amp; exec,
396-
InputIterator first, InputIterator last,
397-
Function f);
398-
</cxx-signature>
392+
<cxx-signature>template&lt;class ExecutionPolicy,
393+
class InputIterator, class Function&gt;
394+
void for_each(ExecutionPolicy&amp;&amp; exec,
395+
InputIterator first, InputIterator last,
396+
Function f);</cxx-signature>
399397

400398
<cxx-effects>
401399
Applies <code>f</code> to the result of dereferencing every iterator in the range <code>[first,last)</code>.
@@ -426,11 +424,9 @@ <h1>For each</h1>
426424
</cxx-function>
427425

428426
<cxx-function>
429-
<cxx-signature>
430-
template&lt;class InputIterator, class Size, class Function&gt;
431-
InputIterator for_each_n(InputIterator first, Size n,
432-
Function f);
433-
</cxx-signature>
427+
<cxx-signature>template&lt;class InputIterator, class Size, class Function&gt;
428+
InputIterator for_each_n(InputIterator first, Size n,
429+
Function f);</cxx-signature>
434430

435431
<cxx-requires>
436432
<code>Function</code> shall meet the requirements of <code>MoveConstructible</code>
@@ -460,13 +456,11 @@ <h1>For each</h1>
460456
</cxx-function>
461457

462458
<cxx-function>
463-
<cxx-signature>
464-
template&lt;class ExecutionPolicy,
465-
class InputIterator, class Size, class Function&gt;
466-
InputIterator for_each_n(ExecutionPolicy &amp;&amp; exec,
467-
InputIterator first, Size n,
468-
Function f);
469-
</cxx-signature>
459+
<cxx-signature>template&lt;class ExecutionPolicy,
460+
class InputIterator, class Size, class Function&gt;
461+
InputIterator for_each_n(ExecutionPolicy &amp;&amp; exec,
462+
InputIterator first, Size n,
463+
Function f);</cxx-signature>
470464

471465
<cxx-effects>
472466
Applies <code>f</code> to the result of dereferencing every iterator in the range
@@ -669,34 +663,28 @@ <h1>Header <code>&lt;experimental/numeric&gt;</code> synopsis</h1>
669663
<h1>Reduce</h1>
670664

671665
<cxx-function>
672-
<cxx-signature>
673-
template&lt;class InputIterator&gt;
674-
typename iterator_traits&lt;InputIterator&gt;::value_type
675-
reduce(InputIterator first, InputIterator last);
676-
</cxx-signature>
666+
<cxx-signature>template&lt;class InputIterator&gt;
667+
typename iterator_traits&lt;InputIterator&gt;::value_type
668+
reduce(InputIterator first, InputIterator last);</cxx-signature>
677669

678670
<cxx-effects>
679671
Same as <code>reduce(first, last, typename iterator_traits&lt;InputIterator&gt;::value_type{})</code>.
680672
</cxx-effects>
681673
</cxx-function>
682674

683675
<cxx-function>
684-
<cxx-signature>
685-
template&lt;class InputIterator, class T&gt;
686-
T reduce(InputIterator first, InputIterator last, T init);
687-
</cxx-signature>
676+
<cxx-signature>template&lt;class InputIterator, class T&gt;
677+
T reduce(InputIterator first, InputIterator last, T init);</cxx-signature>
688678

689679
<cxx-effects>
690680
Same as <code>reduce(first, last, init, plus&lt;&gt;())</code>.
691681
</cxx-effects>
692682
</cxx-function>
693683

694684
<cxx-function>
695-
<cxx-signature>
696-
template&lt;class InputIterator, class T, class BinaryOperation&gt;
697-
T reduce(InputIterator first, InputIterator last, T init,
698-
BinaryOperation binary_op);
699-
</cxx-signature>
685+
<cxx-signature>template&lt;class InputIterator, class T, class BinaryOperation&gt;
686+
T reduce(InputIterator first, InputIterator last, T init,
687+
BinaryOperation binary_op);</cxx-signature>
700688

701689
<cxx-returns>
702690
<code><em>GENERALIZED_SUM</em>(binary_op, init, *first, ..., *(first + (last - first) - 1))</code>.
@@ -722,29 +710,21 @@ <h1>Reduce</h1>
722710
<h1>Exclusive scan</h1>
723711

724712
<cxx-function>
725-
<cxx-signature>
726-
template&lt;class InputIterator, class OutputIterator,
727-
class T&gt;
728-
OutputIterator
729-
exclusive_scan(InputIterator first, InputIterator last,
730-
OutputIterator result,
731-
T init);
732-
</cxx-signature>
713+
<cxx-signature>template&lt;class InputIterator, class OutputIterator, class T&gt;
714+
OutputIterator exclusive_scan(InputIterator first, InputIterator last,
715+
OutputIterator result,
716+
T init);</cxx-signature>
733717

734718
<cxx-effects>
735719
Same as <code>exclusive_scan(first, last, result, init, plus&lt;&gt;())</code>.
736720
</cxx-effects>
737721
</cxx-function>
738722

739723
<cxx-function>
740-
<cxx-signature>
741-
template&lt;class InputIterator, class OutputIterator,
742-
class T, class BinaryOperation&gt;
743-
OutputIterator
744-
exclusive_scan(InputIterator first, InputIterator last,
745-
OutputIterator result,
746-
T init, BinaryOperation binary_op);
747-
</cxx-signature>
724+
<cxx-signature>template&lt;class InputIterator, class OutputIterator, class T, class BinaryOperation&gt;
725+
OutputIterator exclusive_scan(InputIterator first, InputIterator last,
726+
OutputIterator result,
727+
T init, BinaryOperation binary_op);</cxx-signature>
748728

749729
<cxx-effects>
750730
Assigns through each iterator <code>i</code> in <code>[result,result + (last - first))</code> the
@@ -777,34 +757,24 @@ <h1>Exclusive scan</h1>
777757
<h1>Inclusive scan</h1>
778758

779759
<cxx-function>
780-
<cxx-signature>
781-
template&lt;class InputIterator, class OutputIterator&gt;
782-
OutputIterator
783-
inclusive_scan(InputIterator first, InputIterator last,
784-
OutputIterator result);
785-
</cxx-signature>
760+
<cxx-signature>template&lt;class InputIterator, class OutputIterator&gt;
761+
OutputIterator inclusive_scan(InputIterator first, InputIterator last,
762+
OutputIterator result);</cxx-signature>
786763

787764
<cxx-effects>
788765
Same as <code>inclusive_scan(first, last, result, plus&lt;&gt;())</code>.
789766
</cxx-effects>
790767
</cxx-function>
791768

792769
<cxx-function>
793-
<cxx-signature>
794-
template&lt;class InputIterator, class OutputIterator,
795-
class BinaryOperation&gt;
796-
OutputIterator
797-
inclusive_scan(InputIterator first, InputIterator last,
798-
OutputIterator result,
799-
BinaryOperation binary_op);
800-
801-
template&lt;class InputIterator, class OutputIterator,
802-
class BinaryOperation&gt;
803-
OutputIterator
804-
inclusive_scan(InputIterator first, InputIterator last,
805-
OutputIterator result,
806-
BinaryOperation binary_op, T init);
807-
</cxx-signature>
770+
<cxx-signature>template&lt;class InputIterator, class OutputIterator, class BinaryOperation&gt;
771+
OutputIterator inclusive_scan(InputIterator first, InputIterator last,
772+
OutputIterator result,
773+
BinaryOperation binary_op);</cxx-signature>
774+
<cxx-signature>template&lt;class InputIterator, class OutputIterator, class BinaryOperation&gt;
775+
OutputIterator inclusive_scan(InputIterator first, InputIterator last,
776+
OutputIterator result,
777+
BinaryOperation binary_op, T init);</cxx-signature>
808778

809779
<cxx-effects>
810780
Assigns through each iterator <code>i</code> in <code>[result,result + (last - first))</code> the value of
@@ -839,11 +809,9 @@ <h1>Inclusive scan</h1>
839809
<h1>Transform reduce</h1>
840810

841811
<cxx-function>
842-
<cxx-signature>
843-
template&lt;class InputIterator, class UnaryFunction, class T, class BinaryOperation&gt;
844-
T transform_reduce(InputIterator first, InputIterator last,
845-
UnaryOperation unary_op, T init, BinaryOperation binary_op);
846-
</cxx-signature>
812+
<cxx-signature>template&lt;class InputIterator, class UnaryFunction, class T, class BinaryOperation&gt;
813+
T transform_reduce(InputIterator first, InputIterator last,
814+
UnaryOperation unary_op, T init, BinaryOperation binary_op);</cxx-signature>
847815

848816
<cxx-returns>
849817
<code><em>GENERALIZED_SUM</em>(binary_op, init, unary_op(*first), ..., unary_op(*(first + (last - first) - 1)))</code>.
@@ -867,16 +835,13 @@ <h1>Transform reduce</h1>
867835
<h1>Transform exclusive scan</h1>
868836

869837
<cxx-function>
870-
<cxx-signature>
871-
template&lt;class InputIterator, class OutputIterator,
872-
class UnaryOperation,
873-
class T, class BinaryOperation&gt;
874-
OutputIterator
875-
transform_exclusive_scan(InputIterator first, InputIterator last,
876-
OutputIterator result,
877-
UnaryOperation unary_op,
878-
T init, BinaryOperation binary_op);
879-
</cxx-signature>
838+
<cxx-signature>template&lt;class InputIterator, class OutputIterator,
839+
class UnaryOperation,
840+
class T, class BinaryOperation&gt;
841+
OutputIterator transform_exclusive_scan(InputIterator first, InputIterator last,
842+
OutputIterator result,
843+
UnaryOperation unary_op,
844+
T init, BinaryOperation binary_op);</cxx-signature>
880845

881846
<cxx-effects>
882847
Assigns through each iterator <code>i</code> in <code>[result,result + (last - first))</code> the value of
@@ -908,25 +873,21 @@ <h1>Transform exclusive scan</h1>
908873
<h1>Transform inclusive scan</h1>
909874

910875
<cxx-function>
911-
<cxx-signature>
912-
template&lt;class InputIterator, class OutputIterator,
913-
class UnaryOperation,
914-
class BinaryOperation&gt;
915-
OutputIterator
916-
transform_inclusive_scan(InputIterator first, InputIterator last,
917-
OutputIterator result,
918-
UnaryOperation unary_op,
919-
BinaryOperation binary_op);
920-
921-
template&lt;class InputIterator, class OutputIterator,
922-
class UnaryOperation,
923-
class BinaryOperation, class T&gt;
924-
OutputIterator
925-
transform_inclusive_scan(InputIterator first, InputIterator last,
926-
OutputIterator result,
927-
UnaryOperation unary_op,
928-
BinaryOperation binary_op, T init);
929-
</cxx-signature>
876+
<cxx-signature>template&lt;class InputIterator, class OutputIterator,
877+
class UnaryOperation,
878+
class BinaryOperation&gt;
879+
OutputIterator transform_inclusive_scan(InputIterator first, InputIterator last,
880+
OutputIterator result,
881+
UnaryOperation unary_op,
882+
BinaryOperation binary_op);</cxx-signature>
883+
884+
<cxx-signature>template&lt;class InputIterator, class OutputIterator,
885+
class UnaryOperation,
886+
class BinaryOperation, class T&gt;
887+
OutputIterator transform_inclusive_scan(InputIterator first, InputIterator last,
888+
OutputIterator result,
889+
UnaryOperation unary_op,
890+
BinaryOperation binary_op, T init);</cxx-signature>
930891

931892
<cxx-effects>
932893
Assigns through each iterator <code>i</code> in <code>[result,result + (last - first))</code> the value of

exceptions.html

+4-12
Original file line numberDiff line numberDiff line change
@@ -90,9 +90,7 @@ <h1>Header <code>&lt;experimental/exception_list&gt;</code> synopsis</h1>
9090
</p>
9191

9292
<cxx-function>
93-
<cxx-signature>
94-
size_t size() const noexcept;
95-
</cxx-signature>
93+
<cxx-signature>size_t size() const noexcept;</cxx-signature>
9694

9795
<cxx-returns>
9896
The number of <code>exception_ptr</code> objects contained within the <code>exception_list</code>.
@@ -104,29 +102,23 @@ <h1>Header <code>&lt;experimental/exception_list&gt;</code> synopsis</h1>
104102
</cxx-function>
105103

106104
<cxx-function>
107-
<cxx-signature>
108-
iterator begin() const noexcept;
109-
</cxx-signature>
105+
<cxx-signature>iterator begin() const noexcept;</cxx-signature>
110106

111107
<cxx-returns>
112108
An iterator referring to the first <code>exception_ptr</code> object contained within the <code>exception_list</code>.
113109
</cxx-returns>
114110
</cxx-function>
115111

116112
<cxx-function>
117-
<cxx-signature>
118-
iterator end() const noexcept;
119-
</cxx-signature>
113+
<cxx-signature>iterator end() const noexcept;</cxx-signature>
120114

121115
<cxx-returns>
122116
An iterator that is past the end of the owned sequence.
123117
</cxx-returns>
124118
</cxx-function>
125119

126120
<cxx-function>
127-
<cxx-signature>
128-
const char* what() const noexcept override;
129-
</cxx-signature>
121+
<cxx-signature>const char* what() const noexcept override;</cxx-signature>
130122

131123
<cxx-returns>
132124
An implementation-defined NTBS.

execution_policies.html

+3-7
Original file line numberDiff line numberDiff line change
@@ -191,18 +191,14 @@ <h1><code>execution_policy</code> construct/assign</h1>
191191
<h1><code>execution_policy</code> object access</h1>
192192

193193
<cxx-function>
194-
<cxx-signature>
195-
const type_info&amp; type() const noexcept;
196-
</cxx-signature>
194+
<cxx-signature>const type_info&amp; type() const noexcept;</cxx-signature>
197195

198196
<cxx-returns><code>typeid(T)</code>, such that <code>T</code> is the type of the execution policy object contained by <code>*this</code>.</cxx-returns>
199197
</cxx-function>
200198

201199
<cxx-function>
202-
<cxx-signature>
203-
template&lt;class T&gt; T* get() noexcept;
204-
template&lt;class T&gt; const T* get() const noexcept;
205-
</cxx-signature>
200+
<cxx-signature>template&lt;class T&gt; T* get() noexcept;</cxx-signature>
201+
<cxx-signature>template&lt;class T&gt; const T* get() const noexcept;</cxx-signature>
206202

207203
<cxx-returns>If <code>target_type() == typeid(T)</code>, a pointer to the stored execution policy object; otherwise a null pointer.</cxx-returns>
208204

front_matter.html

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<cxx-titlepage stage="draft">
2-
<cxx-docnum>N4352</cxx-docnum>
2+
<cxx-docnum>N4407</cxx-docnum>
33
<cxx-project-number>19570</cxx-project-number>
4-
<time pubdate="">2015-01-08</time>
5-
<cxx-revises><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4310.html">N4310</a></cxx-revises>
4+
<time pubdate="">2015-04-10</time>
5+
<cxx-revises><a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4352.html">N4352</a></cxx-revises>
66
<cxx-editor>
77
Jared Hoberock<br/>
88
NVIDIA Corporation<br/>

0 commit comments

Comments
 (0)