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

### 678. Changes for [rand.req.eng]

Section: 28.5.3.4 [rand.req.eng] Status: CD1 Submitter: Charles Karney Opened: 2007-05-15 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [rand.req.eng].

View all issues with CD1 status.

Discussion:

Section 28.5.3.4 [rand.req.eng] Random number engine requirements:

This change follows naturally from the proposed change to `seed_seq::randomize` in 677.

In table 104 the description of `X(q)` contains a special treatment of the case `q.size() == 0`. This is undesirable for 4 reasons:

1. It replicates the functionality provided by `X()`.
2. It leads to the possibility of a collision in the state provided by some other `X(q)` with `q.size() > 0`.
3. It is inconsistent with the description of the `X(q)` in paragraphs 28.5.4.2 [rand.eng.lcong] p5, 28.5.4.3 [rand.eng.mers] p8, and 28.5.4.4 [rand.eng.sub] p10 where there is no special treatment of `q.size() == 0`.
4. The proposed replacement for `seed_seq::randomize` given above allows for the case `q.size() == 0`.

See N2391 and N2423 for some further discussion.

Proposed resolution:

Adopt the proposed resolution in N2423.

[ Kona (2007): The LWG adopted the proposed resolution of N2423 for this issue. The LWG voted to accelerate this issue to Ready status to be voted into the WP at Kona. ]