eclipse-jdt / eclipse-jdt/eclipse.jdt.core

Many NPE when hover or refactor inside "instanceof" block

Open
#3,263 7 comments 0 reactions 1 assignee Claimed by @srikanth-sankaran View on GitHub
bug regression
Dominant language
Java
Stars
237
Forks
195
Avg merge
1d 12h
Merged PRs (30d)
47

Description

```
package p;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;

public class Test {
{
Map> binaryLocationsJars=new HashMap<>();
if (null instanceof Object jar) {
binaryLocationsJars.compute("", (pp,me // hover "me", or refactor "me"
) ->{
return me;
});
}
}
}
```

for example

```
java.lang.NullPointerException: Cannot invoke "org.eclipse.jdt.internal.compiler.lookup.TypeBinding.signableName()" because "binding.type" is null
at org.eclipse.jdt.internal.core.SelectionRequestor.acceptLocalVariable(SelectionRequestor.java:418)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.selectFrom(SelectionEngine.java:1351)
at org.eclipse.jdt.internal.codeassist.SelectionEngine.select(SelectionEngine.java:1041)
at org.eclipse.jdt.internal.core.Openable.codeSelect(Openable.java:167)
at org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:403)
at org.eclipse.jdt.internal.core.CompilationUnit.codeSelect(CompilationUnit.java:393)
at org.eclipse.jdt.internal.debug.ui.JavaDebugHover.resolveElement(JavaDebugHover.java:519)
at org.eclipse.jdt.internal.debug.ui.JavaDebugHover.getHoverInfo2(JavaDebugHover.java:302)
at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:163)
at org.eclipse.jdt.internal.ui.text.java.hover.BestMatchHover.getHoverInfo2(BestMatchHover.java:130)
at org.eclipse.jdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo2(JavaEditorTextHoverProxy.java:89)
at org.eclipse.jface.text.TextViewerHoverManager$1.run(TextViewerHoverManager.java:155)

```

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.