diff --git a/base/random.jl b/base/random.jl index 074cd1cbc7bc3..01912627a784c 100644 --- a/base/random.jl +++ b/base/random.jl @@ -220,7 +220,7 @@ end ## srand() """ - srand([rng=GLOBAL_RNG], [seed]) + srand([rng=GLOBAL_RNG], [seed]) -> rng Reseed the random number generator. If a `seed` is provided, the RNG will give a reproducible sequence of numbers, otherwise Julia will get entropy from the system. For diff --git a/test/random.jl b/test/random.jl index 90a126a05d996..daa698baea0d5 100644 --- a/test/random.jl +++ b/test/random.jl @@ -479,3 +479,18 @@ let seed = rand(UInt32, 10) resize!(seed, 4) @test r.seed != seed end + +# srand(rng, ...) returns rng (#21248) +let g = Base.Random.GLOBAL_RNG, + m = MersenneTwister(0) + @test srand() === g + @test srand(rand(UInt)) === g + @test srand(rand(UInt32, rand(1:10))) === g + @test srand(@__FILE__) === g + @test srand(@__FILE__, rand(1:10)) === g + @test srand(m) === m + @test srand(m, rand(UInt)) === m + @test srand(m, rand(UInt32, rand(1:10))) === m + @test srand(m, rand(1:10)) === m + @test srand(m, @__FILE__, rand(1:10)) === m +end