method refs: patch getClass return value in the same way it is done in PsiMethodCallExpression

This commit is contained in:
anna
2013-02-26 17:51:14 +01:00
parent a68a88d014
commit 23056b8d20
6 changed files with 91 additions and 47 deletions

View File

@@ -69,7 +69,7 @@ class MyTest1 {
<error descr="Incompatible types. Found: '<method reference>', required: 'MyTest1.I3'">I3 c3 = arr::clone;</error>
<error descr="Incompatible types. Found: '<method reference>', required: 'MyTest1.I4'">I4 c5 = arr::clone;</error>
<error descr="Incompatible types. Found: '<method reference>', required: 'MyTest1.I5'">I5 c4 = this::getClass;</error>
I5 c4 = this::getClass;
<error descr="Incompatible types. Found: '<method reference>', required: 'MyTest1.I6'">I6 c6 = this::getClass;</error>
}
}

View File

@@ -0,0 +1,15 @@
import java.util.List;
class GetClassTest {
interface GetCl {
Class<? extends List> _();
}
interface GetClReturnTypeProblems {
Class<List<String>> _();
}
void test(int[] iarr, List<String> ls) {
GetCl c4 = ls::getClass;
<error descr="Incompatible types. Found: '<method reference>', required: 'GetClassTest.GetClReturnTypeProblems'">GetClReturnTypeProblems c5 = ls::getClass;</error>
}
}