diff --git a/src/generic.jl b/src/generic.jl index 4b78ee90..4547f918 100644 --- a/src/generic.jl +++ b/src/generic.jl @@ -1350,7 +1350,7 @@ function issymmetric(A::AbstractMatrix) return true end -issymmetric(x::Number) = x == x +issymmetric(x::Number) = true """ ishermitian(A) -> Bool @@ -1389,7 +1389,7 @@ function ishermitian(A::AbstractMatrix) return true end -ishermitian(x::Number) = (x == conj(x)) +ishermitian(x::Number) = isreal(x) # helper function equivalent to `iszero(v)`, but potentially without the fast exit feature # of `all` if this improves performance diff --git a/test/generic.jl b/test/generic.jl index 0570b8db..3b029d0c 100644 --- a/test/generic.jl +++ b/test/generic.jl @@ -943,4 +943,12 @@ end @test B == A2 end +@testset "issymmetric/ishermitian for Numbers" begin + fsym(x) = Val(issymmetric(x)) + @test @inferred(fsym(2)) isa Val{true} + @test @inferred(fsym(2im)) isa Val{true} + fherm(x) = Val(ishermitian(x)) + @test @inferred(fherm(2)) isa Val{true} +end + end # module TestGeneric