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.

796. ranlux48_base returns wrong value

Section: 28.5.6 [rand.predef] Status: NAD Submitter: P.J. Plauger Opened: 2008-02-09 Last modified: 2016-01-28

Priority: Not Prioritized

View all other issues in [rand.predef].

View all issues with NAD status.

Discussion:

The 10,000th value returned by ranlux48_base is supposed to be 61839128582725. We get 192113843633948. (Note that the underlying generator was changed in Kona.)

[ Bellevue: ]

Submitter withdraws defect.

Proposed resolution:

Change 28.5.6 [rand.predef]/p5:

typedef subtract_with_carry_engine<uint_fast64_t, 48, 5, 12> 
        ranlux48_base; 

Required behavior: The 10000th consecutive invocation of a default-constructed object of type ranlux48_base shall produce the value 61839128582725 192113843633948.