method refs: ensure non-resolved method refs are not marked as exact (EA-59172 - assert: TypeConversionUtil.reportHierarchyInconsistency)

This commit is contained in:
Anna Kozlova
2015-02-25 20:34:39 +01:00
parent d46ab6c407
commit c0dee3fb75
3 changed files with 18 additions and 0 deletions
@@ -151,6 +151,10 @@ public class PsiMethodReferenceExpressionImpl extends PsiReferenceExpressionBase
result.add(signature.getMethod());
}
}
if (result.isEmpty()) {
return null;
}
methods = result.toArray(new PsiMethod[result.size()]);
}
else if (isConstructor()) {
@@ -0,0 +1,10 @@
import java.util.function.Function;
class Test<A> {
class P {
{
g(P::<error descr="Cannot resolve method 'aa'">aa</error>);
}
}
<R> void g(Function<R, String> r){}
}
@@ -386,6 +386,10 @@ public class NewMethodRefHighlightingTest extends LightDaemonAnalyzerTestCase {
doTest();
}
public void testEnsureNotResolvedMethodRefsAreNotMarkedAsExact() throws Exception {
doTest();
}
private void doTest() {
doTest(false);
}