typelevel/spire

Eq[Polynomial[C]] throws ArrayIndexOutOfBoundsException for negative exponents

Open

#756 opened on Jan 9, 2019

View on GitHub
 (7 comments) (0 reactions) (0 assignees)Scala (1,775 stars) (238 forks)batch import
good first issue

Description

Reproduce:

scala> def x: Polynomial[Int] = PolySparse(List(Term(-1642198702, -1)))
x: spire.math.Polynomial[Int]
scala> x === x
java.lang.ArrayIndexOutOfBoundsException: -1
  at scala.runtime.ScalaRunTime$.array_update(ScalaRunTime.scala:76)
  at spire.math.poly.PolySparse.coeffsArray(PolySparse.scala:54)
  at spire.math.PolynomialEq.eqv(Polynomial.scala:556)
  at spire.math.PolynomialEq.eqv$(Polynomial.scala:555)
  at spire.math.PolynomialInstances0$$anon$14.eqv(Polynomial.scala:568)
  ... 36 elided

Contributor guide