google / google/error-prone

DeadException rule throws java.lang.NullPointerException

Open
#4,136 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
7.2k
Forks
820
Avg merge
5h 9m
Merged PRs (30d)
50

Description

error-prone version: 2.22.0
BugPattern: DeadException
The following code causes NPE:
```
switch (fd.getType()) {
case BOOL -> doSomething();
default -> new UnsupportedOperationException("Unsupported type:" + fd.getType());
}
```

```
Stack Trace:
java.lang.NullPointerException: Cannot invoke "java.lang.Iterable.iterator()" because the return value of "com.google.errorprone.matchers.ChildMultiMatcher.getChildNodes(com.sun.source.tree.Tree, com.google.errorprone.VisitorState)" is null
at com.google.errorprone.matchers.ChildMultiMatcher.multiMatchResult(ChildMultiMatcher.java:176)
at com.google.errorprone.matchers.ChildMultiMatcher.matches(ChildMultiMatcher.java:170)
at com.google.errorprone.matchers.Matchers.lambda$anyOf$5390886b$1(Matchers.java:170)
at com.google.errorprone.bugpatterns.DeadException.matchNewClass(DeadException.java:82)
at com.google.errorprone.scanner.ErrorProneScanner.processMatchers(ErrorProneScanner.java:449)
at com.google.errorprone.scanner.ErrorProneScanner.visitNewClass(ErrorProneScanner.java:773)
at com.google.errorprone.scanner.ErrorProneScanner.visitNewClass(ErrorProneScanner.java:150)
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.