You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "David Nickerson (JIRA)" <ji...@apache.org> on 2017/08/03 17:18:00 UTC
[jira] [Created] (NUMBERS-48) Unreachable statements in
Complex.abs()
David Nickerson created NUMBERS-48:
--------------------------------------
Summary: Unreachable statements in Complex.abs()
Key: NUMBERS-48
URL: https://issues.apache.org/jira/browse/NUMBERS-48
Project: Commons Numbers
Issue Type: Bug
Affects Versions: 1.1
Reporter: David Nickerson
Priority: Minor
Attachments: complex_abs.patch
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)