@@ -546,7 +546,7 @@ copy_with_eltype(::Type{T}, p::P) where {T, S, Y, P <:AbstractPolynomial{S,Y}} =
546546# copy_with_eltype(::Type{T}, p::P) where {T, S, X, P<:AbstractPolynomial{S,X}} =
547547# copy_with_eltype(Val(T), Val(X), p)
548548
549- Base. iszero (p:: AbstractPolynomial ) = all (iszero, p )
549+ Base. iszero (p:: AbstractPolynomial ) = all (iszero, values (p) )
550550
551551
552552# See discussions in https://github.com/JuliaMath/Polynomials.jl/issues/258
@@ -622,7 +622,7 @@ hasnan(x) = isnan(x)
622622
623623Is the polynomial `p` a constant.
624624"""
625- isconstant (p:: AbstractPolynomial ) = degree (p) <= 0
625+ isconstant (p:: AbstractPolynomial ) = degree (p) <= 0 && iszero ( firstindex (p))
626626
627627"""
628628 coeffs(::AbstractPolynomial)
@@ -1152,7 +1152,7 @@ function Base.:(==)(p1::AbstractPolynomial, p2::AbstractPolynomial)
11521152 check_same_variable (p1, p2) || return false
11531153 == (promote (p1,p2)... )
11541154end
1155- Base.:(== )(p:: AbstractPolynomial , n:: Number ) = degree (p) <= 0 && constantterm (p) == n
1155+ Base.:(== )(p:: AbstractPolynomial , n:: Number ) = isconstant (p) && constantterm (p) == n
11561156Base.:(== )(n:: Number , p:: AbstractPolynomial ) = p == n
11571157
11581158function Base. isapprox (p1:: AbstractPolynomial , p2:: AbstractPolynomial ; kwargs... )
0 commit comments