diff --git a/java/java-psi-api/src/com/intellij/psi/util/PsiUtil.java b/java/java-psi-api/src/com/intellij/psi/util/PsiUtil.java index 49fbfec70d4c..b0f7d453363a 100644 --- a/java/java-psi-api/src/com/intellij/psi/util/PsiUtil.java +++ b/java/java-psi-api/src/com/intellij/psi/util/PsiUtil.java @@ -466,7 +466,8 @@ public final class PsiUtil extends PsiUtilCore { final PsiParameter[] parms = method.getParameterList().getParameters(); if (args.length < parms.length - 1) return ApplicabilityLevel.NOT_APPLICABLE; - final boolean isRaw = isRawSubstitutor(method, substitutorForMethod); + final PsiClass containingClass = method.getContainingClass(); + final boolean isRaw = containingClass != null && isRawSubstitutor(containingClass, substitutorForMethod); if (!areFirstArgumentsApplicable(args, parms, languageLevel, substitutorForMethod, isRaw)) return ApplicabilityLevel.NOT_APPLICABLE; if (args.length == parms.length) { if (parms.length == 0) return ApplicabilityLevel.FIXED_ARITY; diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA104992.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA104992.java new file mode 100644 index 000000000000..3798c7058401 --- /dev/null +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA104992.java @@ -0,0 +1,17 @@ +import java.util.Collection; +import java.util.Set; + +class FooObject {} +class FooId {} + +interface Bar { + > T get(I key); + > Collection get(Collection keys); +} + +public class Target { + void foo(Bar bar) { + final Set> keys = null; + final Collection values = bar.get(keys); + } +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java index 0527f38a76e1..e6c8ec1c5083 100644 --- a/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java +++ b/java/java-tests/testSrc/com/intellij/codeInsight/daemon/GenericsHighlightingTest.java @@ -207,6 +207,7 @@ public class GenericsHighlightingTest extends LightDaemonAnalyzerTestCase { public void testIDEA103760(){ doTest5(false); } public void testIDEA105846(){ doTest5(false); } public void testIDEA105695(){ doTest5(false); } + public void testIDEA104992(){ doTest5(false); } public void testWildcardsOnRawTypes() { doTest5(false); } public void testDisableWithinBoundsCheckForSuperWildcards() {