Bug 2882 – std.random.MersenneTwisterEngine without no seed

Status
RESOLVED
Resolution
FIXED
Severity
minor
Priority
P4
Component
phobos
Product
D
Version
D2
Platform
x86
OS
Windows
Creation time
2009-04-22T18:22:00Z
Last change time
2015-06-09T01:26:26Z
Assigned to
bugzilla
Creator
repeatedly

Comments

Comment #0 by repeatedly — 2009-04-22T18:22:50Z
void main() { writeln("Case1"); { Mt19937 gen = Mt19937(0); writeln(gen.front); gen.popFront; writeln(gen.front); } writeln("---"); { Mt19937 gen = Mt19937(0); advance(gen, 1); // skip 1 element writeln(gen.front); gen.popFront; writeln(gen.front); } writeln("¥nCase2"); { Mt19937 gen; writeln(gen.front); gen.popFront; writeln(gen.front); } writeln("---"); { Mt19937 gen; advance(gen, 1); // skip 1 element writeln(gen.front); gen.popFront; writeln(gen.front); } } Result: Case1 2357136044 (1) 2546248239 (2) --- 2546248239 (2) 3071714933 (3) Case2 581869302 (1) 3890346734 (2) --- 581869302 (1)? 3890346734 (2)? The second part of Case2 skipped one element using advance(calling popFront), but the result didn't skip.
Comment #1 by andrei — 2009-04-23T04:10:18Z
Fixed in svn, will be part of 2.030.