@@ -48,6 +48,9 @@ struct UnionStruct1{T}
4848 y:: Any
4949end
5050
51+ struct EmptyStruct
52+ end
53+
5154@testset " TypeTree" begin
5255 @test tt (Float16) == " {[-1]:Float@half}"
5356 @test tt (Float32) == " {[-1]:Float@float}"
99102 " {[0]:Pointer, [0,0]:Pointer, [0,4]:Float@float, [0,8]:Float@double, [4]:Integer, [8]:Pointer, [8,0]:Pointer, [8,4]:Float@float, [8,8]:Float@double, [12]:Integer, [16]:Pointer, [16,0]:Pointer, [16,4]:Float@float, [16,8]:Float@double, [20]:Integer, [24]:Pointer, [24,0]:Pointer, [24,4]:Float@float, [24,8]:Float@double}"
100103 end
101104
105+ @static if VERSION >= v " 1.11-"
106+ if Sys. WORD_SIZE == 64
107+ @test tt (MemoryRef{EmptyStruct}) == " {[0]:Integer, [1]:Integer, [2]:Integer, [3]:Integer, [4]:Integer, [5]:Integer, [6]:Integer, [7]:Integer, [8]:Pointer, [8,0]:Integer, [8,1]:Integer, [8,2]:Integer, [8,3]:Integer, [8,4]:Integer, [8,5]:Integer, [8,6]:Integer, [8,7]:Integer, [8,8]:Pointer}"
108+ @test tt (MemoryRef{Union{Float64, Int64}}) == " {[0]:Integer, [1]:Integer, [2]:Integer, [3]:Integer, [4]:Integer, [5]:Integer, [6]:Integer, [7]:Integer, [8]:Pointer, [8,0]:Integer, [8,1]:Integer, [8,2]:Integer, [8,3]:Integer, [8,4]:Integer, [8,5]:Integer, [8,6]:Integer, [8,7]:Integer, [8,8]:Pointer}"
109+ @test tt (MemoryRef{Float64}) == " {[-1]:Pointer, [0,-1]:Float@double, [8,0]:Integer, [8,1]:Integer, [8,2]:Integer, [8,3]:Integer, [8,4]:Integer, [8,5]:Integer, [8,6]:Integer, [8,7]:Integer, [8,8]:Pointer, [8,8,-1]:Float@double}"
110+ end
111+ end
112+
102113 @test tt (UnionStruct1{Float32}) == " {[0]:Float@float, [4]:Integer, [8]:Pointer}"
103114
104115 if Sys. WORD_SIZE == 64
0 commit comments