@@ -165,18 +165,33 @@ using StaticArrays, Test, LinearAlgebra
165165 @test convert (AbstractArray{Float64}, diag) == diag
166166 # The following cases currently convert the SMatrix into an MMatrix, because
167167 # the constructor in Base invokes `similar`, rather than `convert`, on the static array
168- trans = Transpose (SVector (1 ,2 ))
169- @test_broken @inferred (convert (AbstractArray{Float64}, trans)) isa Transpose{Float64,SVector{2 ,Float64}}
170- adj = Adjoint (SVector (1 ,2 ))
171- @test_broken @inferred (convert (AbstractArray{Float64}, adj)) isa Adjoint{Float64,SVector{2 ,Float64}}
172- uptri = UpperTriangular (SA[1 2 ; 0 3 ])
173- @test_broken @inferred (convert (AbstractArray{Float64}, uptri)) isa UpperTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
174- lotri = LowerTriangular (SA[1 0 ; 2 3 ])
175- @test_broken @inferred (convert (AbstractArray{Float64}, lotri)) isa LowerTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
176- unituptri = UnitUpperTriangular (SA[1 2 ; 0 1 ])
177- @test_broken @inferred (convert (AbstractArray{Float64}, unituptri)) isa UnitUpperTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
178- unitlotri = UnitLowerTriangular (SA[1 0 ; 2 1 ])
179- @test_broken @inferred (convert (AbstractArray{Float64}, unitlotri)) isa UnitLowerTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
168+ if VERSION < v " 1.8-"
169+ trans = Transpose (SVector (1 ,2 ))
170+ @test_broken @inferred (convert (AbstractArray{Float64}, trans)) isa Transpose{Float64,SVector{2 ,Float64}}
171+ adj = Adjoint (SVector (1 ,2 ))
172+ @test_broken @inferred (convert (AbstractArray{Float64}, adj)) isa Adjoint{Float64,SVector{2 ,Float64}}
173+ uptri = UpperTriangular (SA[1 2 ; 0 3 ])
174+ @test_broken @inferred (convert (AbstractArray{Float64}, uptri)) isa UpperTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
175+ lotri = LowerTriangular (SA[1 0 ; 2 3 ])
176+ @test_broken @inferred (convert (AbstractArray{Float64}, lotri)) isa LowerTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
177+ unituptri = UnitUpperTriangular (SA[1 2 ; 0 1 ])
178+ @test_broken @inferred (convert (AbstractArray{Float64}, unituptri)) isa UnitUpperTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
179+ unitlotri = UnitLowerTriangular (SA[1 0 ; 2 1 ])
180+ @test_broken @inferred (convert (AbstractArray{Float64}, unitlotri)) isa UnitLowerTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
181+ else
182+ trans = Transpose (SVector (1 ,2 ))
183+ @test @inferred (convert (AbstractArray{Float64}, trans)) isa Transpose{Float64,SVector{2 ,Float64}}
184+ adj = Adjoint (SVector (1 ,2 ))
185+ @test @inferred (convert (AbstractArray{Float64}, adj)) isa Adjoint{Float64,SVector{2 ,Float64}}
186+ uptri = UpperTriangular (SA[1 2 ; 0 3 ])
187+ @test @inferred (convert (AbstractArray{Float64}, uptri)) isa UpperTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
188+ lotri = LowerTriangular (SA[1 0 ; 2 3 ])
189+ @test @inferred (convert (AbstractArray{Float64}, lotri)) isa LowerTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
190+ unituptri = UnitUpperTriangular (SA[1 2 ; 0 1 ])
191+ @test @inferred (convert (AbstractArray{Float64}, unituptri)) isa UnitUpperTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
192+ unitlotri = UnitLowerTriangular (SA[1 0 ; 2 1 ])
193+ @test @inferred (convert (AbstractArray{Float64}, unitlotri)) isa UnitLowerTriangular{Float64,SMatrix{2 ,2 ,Float64,4 }}
194+ end
180195 end
181196end
182197
0 commit comments