David Nickerson created MATH-1427: ------------------------------------- Summary: Unreachable statements in Complex.abs() Key: MATH-1427 URL: https://issues.apache.org/jira/browse/MATH-1427 Project: Commons Math Issue Type: Bug Affects Versions: 3.6.1 Reporter: David Nickerson Priority: Minor
This return statement in Complex.abs() is unreachable: {code:java} if (FastMath.abs(real) < FastMath.abs(imaginary)) { if (imaginary == 0.0) { return FastMath.abs(real); } {code} If imaginary == 0, then there's no way that the preceding condition would be true. There are two similar inner 'if' statements that were accidentally switched. Returned values are still correct, but performance suffers. The attached patch switches these back. Note that we're still protected from dividing by zero. -- This message was sent by Atlassian JIRA (v6.4.14#64029)