mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-21 22:11:40 +07:00
IDEA-221376 IntelliJ generates unnecessary cast with raw type
GitOrigin-RevId: 47578006a2766c17c6af8833085419a463a0e3c9
This commit is contained in:
committed by
intellij-monorepo-bot
parent
bb7a79b54a
commit
9dc70cc524
@@ -30,10 +30,7 @@ import com.intellij.psi.search.PsiElementProcessorAdapter;
|
||||
import com.intellij.psi.search.SearchScope;
|
||||
import com.intellij.psi.search.searches.ClassInheritorsSearch;
|
||||
import com.intellij.psi.search.searches.ReferencesSearch;
|
||||
import com.intellij.psi.util.CachedValueProvider;
|
||||
import com.intellij.psi.util.CachedValuesManager;
|
||||
import com.intellij.psi.util.PsiTreeUtil;
|
||||
import com.intellij.psi.util.PsiUtil;
|
||||
import com.intellij.psi.util.*;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.BitUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
@@ -358,7 +355,7 @@ public class GuessManagerImpl extends GuessManager {
|
||||
PsiClass typeClass = PsiUtil.resolveClassInType(t);
|
||||
return typeClass == null || PsiUtil.isAccessible(typeClass, expr, null);
|
||||
});
|
||||
if (result.equals(Collections.singletonList(expr.getType()))) {
|
||||
if (result.equals(Collections.singletonList(TypeConversionUtil.erasure(expr.getType())))) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return result;
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
class Foo {
|
||||
{
|
||||
List<? extends List<? extends Future<?>>> list = new ArrayList<>();
|
||||
list.stream().map(l -> l.stream().map(f -> f.isD<caret>
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Future;
|
||||
|
||||
class Foo {
|
||||
{
|
||||
List<? extends List<? extends Future<?>>> list = new ArrayList<>();
|
||||
list.stream().map(l -> l.stream().map(f -> f.isDone()<caret>
|
||||
}
|
||||
}
|
||||
@@ -71,6 +71,7 @@ class NormalCompletionDfaTest extends NormalCompletionTestCase {
|
||||
void testInstanceOfDisjunctionDeep() { doTest() }
|
||||
void testInstanceOfDisjunctionCircular() { doTest() }
|
||||
void testAfterGetClass() { doTest() }
|
||||
void testNoCastForCompatibleCapture() { doTest() }
|
||||
void testComplexInstanceOfDfa() {
|
||||
configureByTestName()
|
||||
myFixture.assertPreferredCompletionItems 0, 'methodFromX', 'methodFromX2', 'methodFromY', 'methodFromY2'
|
||||
|
||||
Reference in New Issue
Block a user