You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Gilles (JIRA)" <ji...@apache.org> on 2018/01/27 16:50:00 UTC

[jira] [Resolved] (NUMBERS-48) Unreachable statements in Complex.abs()

     [ https://issues.apache.org/jira/browse/NUMBERS-48?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gilles resolved NUMBERS-48.
---------------------------
    Resolution: Fixed

commit 16322d83ab3092e93a1e2d7f576b185682c16f69

> Unreachable statements in Complex.abs()
> ---------------------------------------
>
>                 Key: NUMBERS-48
>                 URL: https://issues.apache.org/jira/browse/NUMBERS-48
>             Project: Commons Numbers
>          Issue Type: Bug
>            Reporter: David Nickerson
>            Priority: Minor
>              Labels: easyfix, newbie, patch
>             Fix For: 1.0
>
>         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
(v7.6.3#76005)