Is Base.MPFR.setprecision in Julia 1.3 Thread Safe?

Is Base.MPFR.setprecision in Julia 1.3 Thread Safe?

No.

julia> Base.MPFR.DEFAULT_PRECISION
Base.RefValue{Int64}(256)
julia> @noinline f() = a = rand(rand(50_000));
julia> Threads.@threads for i=1:23 setprecision(f, BigFloat, 23) end
julia> Threads.@threads for i=1:23 setprecision(f, BigFloat, 23) end
julia> Threads.@threads for i=1:23 setprecision(f, BigFloat, 23) end
julia> Base.MPFR.DEFAULT_PRECISION
Base.RefValue{Int64}(23)