method references: highlight separately non-instantiated classes, not resolved methods (IDEA-123279)

This commit is contained in:
Anna Kozlova
2014-04-01 20:49:29 +02:00
parent 6b4ad69ecd
commit 2cc9842ac2
18 changed files with 110 additions and 77 deletions

View File

@@ -70,8 +70,8 @@ class MyTest3<X> {
static void test(I<Integer> s) { }
public static void main(String[] args) {
<error descr="Incompatible types. Found: '<method reference>', required: 'MyTest3.I<java.lang.Integer>'">I<Integer> s = MyTest3<String>::new;</error>
test<error descr="'test(MyTest3.I<java.lang.Integer>)' in 'MyTest3' cannot be applied to '(<method reference>)'">(MyTest3<String>::new)</error>;
I<Integer> s = MyTest3<String>::<error descr="Cannot resolve constructor 'MyTest3'">new</error>;
test(MyTest3<String>::<error descr="Cannot resolve constructor 'MyTest3'">new</error>);
}
}
@@ -99,6 +99,6 @@ class MyTestInvalidQ {
interface I {
A foo();
}
<error descr="Incompatible types. Found: '<method reference>', required: 'MyTestInvalidQ.A.I'">I i = A :: new;</error>
I i = <error descr="'A' is abstract; cannot be instantiated">A :: new</error>;
}
}