This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of NAD status.

### 1313. Seed sequence's param function not useful for pure output iterator

Section: 28.5.8.1 [rand.util.seedseq] Status: NAD Submitter: Daniel Krügler Opened: 2010-02-07 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [rand.util.seedseq].

View all issues with NAD status.

Discussion:

The Seed sequence requirements (28.5.3.2 [rand.req.seedseq]) require the existence of a member function

>     template<typename OutputIterator>
>     void param(OutputIterator ob);

The fact that this function returns `void` instead of the value of `ob` after accepting the sequence data leads to the same problem as in issue 865 - In case of pure output iterators there is no way to serialize further data into that data sink.

[ 2010-02-07 Howard adds: ]

> At the time this issue was opened, the suggested changes are with respect to an anticipated draft which does not yet exist.

[ 2010 Pittsburgh: ]

> No technical counterarguments, but it is simply too late in the process to make this change at this point.

Proposed resolution:

1. In Table 109 — Seed sequence requirements, expression "`r.param(ob)`" change the
   Return type entry:

   >     voidOutputIterator

2. In 28.5.8.1 [rand.util.seedseq], class seed_seq synopsis change

   >     template<class OutputIterator>
   >     voidOutputIterator param(OutputIterator dest) const;