You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by "Nakarukatoshi (Jira)" <ji...@apache.org> on 2021/05/07 10:53:00 UTC

[jira] [Updated] (NETBEANS-5667) False positive: Dereferencing possible Null Pointer Exception

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

Nakarukatoshi updated NETBEANS-5667:
------------------------------------
    Description: 
As posted on NETBEANS-1480, here is another clear example of the fake NullPointerException:

 

{{public static void foo(Object bar) {}}
 {{    Objects.requireNonNull(bar, "[bar] must not be null.");}}
 {{    if (bar instanceof String) {}}
 {{        System.out.println(bar.toString());}}
 {{    } else {}}
 {{        throw new IllegalArgumentException("[" + bar.{color:#de350b}getClass{color}().getSimpleName() + "] not supported.");}}
}
}

{{In other words, after the Objects#requireNonNull(Object, String) check, if I do an if-else with an instanceof operator, the "else" section will warn about a NullPointerException (the red method)}}

  was:
As posted on [NETBEANS-1480], here is another clear example of the fake NullPointerException:

{{public static void foo(Object bar) {}}
{{    Objects.requireNonNull(bar, "[bar] must not be null.");}}
{{    if (bar instanceof String) {}}
{{        System.out.println(bar.toString());}}
{{    } else {}}
{{        throw new IllegalArgumentException("[" + bar.{color:#de350b}getClass{color}().getSimpleName() + "] not supported.");}}
{{    }}}
{{ }}}

{{In other words, after the Objects#requireNonNull(Object, String) check, if I do an if-else with an instanceof operator, the "else" section will warn about a NullPointerException (the red method)}}


> False positive: Dereferencing possible Null Pointer Exception
> -------------------------------------------------------------
>
>                 Key: NETBEANS-5667
>                 URL: https://issues.apache.org/jira/browse/NETBEANS-5667
>             Project: NetBeans
>          Issue Type: Bug
>    Affects Versions: 12.3
>            Reporter: Nakarukatoshi
>            Priority: Minor
>              Labels: false, npe, nullpointerexception, warn, warning
>         Attachments: prove.png
>
>
> As posted on NETBEANS-1480, here is another clear example of the fake NullPointerException:
>  
> {{public static void foo(Object bar) {}}
>  {{    Objects.requireNonNull(bar, "[bar] must not be null.");}}
>  {{    if (bar instanceof String) {}}
>  {{        System.out.println(bar.toString());}}
>  {{    } else {}}
>  {{        throw new IllegalArgumentException("[" + bar.{color:#de350b}getClass{color}().getSimpleName() + "] not supported.");}}
> }
> }
> {{In other words, after the Objects#requireNonNull(Object, String) check, if I do an if-else with an instanceof operator, the "else" section will warn about a NullPointerException (the red method)}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists