Skip to content

Commit 9bd498d

Browse files
committed
outline rng length assert
(cherry picked from commit d723cee)
1 parent 4c58369 commit 9bd498d

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

stdlib/Random/src/RNGs.jl

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ seed!(seed::Union{Integer,Vector{UInt32}}) = seed!(default_rng(), seed)
295295
const THREAD_RNGs = MersenneTwister[]
296296
@inline default_rng() = default_rng(Threads.threadid())
297297
@noinline function default_rng(tid::Int)
298-
@assert 0 < tid <= length(THREAD_RNGs)
298+
0 < tid <= length(THREAD_RNGs) || _rng_length_assert()
299299
if @inbounds isassigned(THREAD_RNGs, tid)
300300
@inbounds MT = THREAD_RNGs[tid]
301301
else
@@ -304,6 +304,8 @@ const THREAD_RNGs = MersenneTwister[]
304304
end
305305
return MT
306306
end
307+
@noinline _rng_length_assert() = @assert false "0 < tid <= length(THREAD_RNGs)"
308+
307309
function __init__()
308310
resize!(empty!(THREAD_RNGs), Threads.nthreads()) # ensures that we didn't save a bad object
309311
end

0 commit comments

Comments
 (0)