https://github.com/JuliaLang/julia
Raw File
Tip revision: a6f2b7f3868705007659d8a3702d6637359609e2 authored by Shuhei Kadowaki on 31 October 2023, 16:59:36 UTC
revisit #47137: avoid round-trip of locally-cached inferred source
Tip revision: a6f2b7f
smallarrayshrink.jl
@testset "shrink small array" begin
    function check_array(x, size, capacity)
        @test x[1] == 1
        @test x[2] == 2
        @test x[3] == 3
        @test x[4] == 4
        @test ccall(:jl_array_size, Int, (Any, UInt), x, 0) == size
        @test ccall(:jl_array_size, Int, (Any, UInt), x, 1) == capacity
    end
    for hint_size = [10000, 1000000]
        x = [1, 2, 3, 4]
        check_array(x, 4, 4)
        sizehint!(x, hint_size)
        check_array(x, 4, hint_size)
        sizehint!(x, 4; shrink = false)
        check_array(x, 4, hint_size)
        sizehint!(x, 4)
        check_array(x, 4, 4)
    end
end
back to top