@@ -921,6 +921,22 @@ same_value_and_type(x::T, y::T) where {T} = (x === y) || (x == y)
921921 @test @inferred(get_precision(B)) == Float32
922922 @test @inferred(get_precision(typeof(B))) == Float32
923923
924+ # Multiple arguments.
925+ @test @inferred(get_precision(Int8, Int)) == AbstractFloat
926+ @test @inferred(get_precision(Int8, Int, BigFloat)) == BigFloat
927+ @test @inferred(get_precision(String, Float16)) == Float16
928+ @test @inferred(get_precision(:hello, Float16)) == Float16
929+ @test @inferred(get_precision(:hello, zero(Float16))) == Float16
930+ @test @inferred(get_precision(Symbol, zero(Float16))) == Float16
931+ @test @inferred(get_precision(Float16, String)) == Float16
932+ @test @inferred(get_precision(Float16, :hello)) == Float16
933+ @test @inferred(get_precision(zero(Float16), :hello)) == Float16
934+ @test @inferred(get_precision(zero(Float16), Symbol)) == Float16
935+ @test @inferred(get_precision(Float32, Int)) == Float32
936+ @test @inferred(get_precision(Float32, Int, pi )) == Float32
937+ @test @inferred(get_precision(Float32, Int, pi , 1.0 )) == Float64
938+ @test @inferred(get_precision(Float32, Int, pi , 1.0 )) == Float64
939+ @test @inferred(get_precision(Float32, Int, pi , big(1.0 ))) == BigFloat
924940 end
925941
926942 @testset " adapt_precision" begin
0 commit comments