SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.9.1

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
33 16 0 0

Files

Class Bugs
org.djutils.math.functions.Concatenation 2
org.djutils.math.functions.Interval 2
org.djutils.math.functions.Logarithm 1
org.djutils.math.functions.Product 2
org.djutils.math.functions.Quotient 1
org.djutils.math.functions.Sine 1
org.djutils.math.functions.Sum 2
org.djutils.math.polynomialroots.PolynomialRoots 1
org.djutils.math.polynomialroots.PolynomialRoots2 4

org.djutils.math.functions.Concatenation

Bug Category Details Line Priority
Exception thrown in class org.djutils.math.functions.Concatenation at new org.djutils.math.functions.Concatenation(SortedSet) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 70 Medium
Exception thrown in class org.djutils.math.functions.Concatenation at new org.djutils.math.functions.Concatenation(Interval[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 38 Medium

org.djutils.math.functions.Interval

Bug Category Details Line Priority
org.djutils.math.functions.Interval.compareTo(Interval) incorrectly handles double value BAD_PRACTICE CO_COMPARETO_INCORRECT_FLOATING 109 Medium
org.djutils.math.functions.Interval.compareTo(Interval) incorrectly handles double value BAD_PRACTICE CO_COMPARETO_INCORRECT_FLOATING 100 Medium

org.djutils.math.functions.Logarithm

Bug Category Details Line Priority
Test for floating point equality in org.djutils.math.functions.Logarithm.toString() STYLE FE_FLOATING_POINT_EQUALITY 201 High

org.djutils.math.functions.Product

Bug Category Details Line Priority
Exception thrown in class org.djutils.math.functions.Product at new org.djutils.math.functions.Product(List) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 49 Medium
Exception thrown in class org.djutils.math.functions.Product at new org.djutils.math.functions.Product(MathFunction[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 38 Medium

org.djutils.math.functions.Quotient

Bug Category Details Line Priority
Exception thrown in class org.djutils.math.functions.Quotient at new org.djutils.math.functions.Quotient(MathFunction, MathFunction) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 36 Medium

org.djutils.math.functions.Sine

Bug Category Details Line Priority
Check for oddness that won't work for negative numbers in org.djutils.math.functions.Sine.toString() STYLE IM_BAD_CHECK_FOR_ODD 253 Medium

org.djutils.math.functions.Sum

Bug Category Details Line Priority
Exception thrown in class org.djutils.math.functions.Sum at new org.djutils.math.functions.Sum(List) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 49 Medium
Exception thrown in class org.djutils.math.functions.Sum at new org.djutils.math.functions.Sum(MathFunction[]) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 38 Medium

org.djutils.math.polynomialroots.PolynomialRoots

Bug Category Details Line Priority
Dead store to p1 in org.djutils.math.polynomialroots.PolynomialRoots.cubicRoots(double, double, double, boolean) STYLE DLS_DEAD_LOCAL_STORE 462 Medium

org.djutils.math.polynomialroots.PolynomialRoots2

Bug Category Details Line Priority
Test for floating point equality in org.djutils.math.polynomialroots.PolynomialRoots2.rootBisection(double[], double, double, double) STYLE FE_FLOATING_POINT_EQUALITY 704 High
Test for floating point equality in org.djutils.math.polynomialroots.PolynomialRoots2.rootNewtonRaphson(double[], double) STYLE FE_FLOATING_POINT_EQUALITY 667 High
Test for floating point equality in org.djutils.math.polynomialroots.PolynomialRoots2.rootsAberthEhrlich(Complex[]) STYLE FE_FLOATING_POINT_EQUALITY 632 Medium
Test for floating point equality in org.djutils.math.polynomialroots.PolynomialRoots2.rootsDurandKerner(Complex[]) STYLE FE_FLOATING_POINT_EQUALITY 563 Medium