mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-07 13:39:36 +07:00
java method ref highlighting: don't mirror errors of not applicable methods of return type (IDEA-224306)
GitOrigin-RevId: 40b4293c754640445b9fac741eab24261e8060cc
This commit is contained in:
committed by
intellij-monorepo-bot
parent
1d55c64626
commit
589b029a97
@@ -70,8 +70,8 @@ class MyTest3<X> {
|
||||
static void test(I<Integer> s) { }
|
||||
|
||||
public static void main(String[] args) {
|
||||
I<Integer> s = <error descr="Bad return type in method reference: cannot convert MyTest3<java.lang.String> to MyTest3<java.lang.Integer>">MyTest3<String>::new</error>;
|
||||
test(<error descr="Bad return type in method reference: cannot convert MyTest3<java.lang.String> to MyTest3<java.lang.Integer>">MyTest3<String>::new</error>);
|
||||
I<Integer> s = MyTest3<String>::<error descr="Incompatible types: Integer is not convertible to String">new</error>;
|
||||
test(MyTest3<String>::<error descr="Incompatible types: Integer is not convertible to String">new</error>);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -5,6 +5,6 @@ class Outer<K> {
|
||||
|
||||
{
|
||||
//wrong number of parameters as well as a wrong expected type
|
||||
final IntFunction<Outer[]> aNew = <error descr="Bad return type in method reference: cannot convert Outer to Outer[]">Outer::new</error>;
|
||||
final IntFunction<Outer[]> aNew = Outer::<error descr="Cannot resolve constructor 'Outer'">new</error>;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
import java.util.function.Function;
|
||||
|
||||
abstract class Logger {
|
||||
public void error(Throwable t) { }
|
||||
public abstract void error(String message, Throwable t, String... details);
|
||||
}
|
||||
|
||||
public class JavaTest {
|
||||
private static Logger ourLogger = null;
|
||||
|
||||
void test() {
|
||||
test2(<error descr="Bad return type in method reference: cannot convert void to java.lang.Void">ourLogger::error</error>);
|
||||
test3(<error descr="Bad return type in method reference: cannot convert void to java.lang.Integer">ourLogger::error</error>);
|
||||
}
|
||||
|
||||
void test2(Function<Throwable, Void> x) { }
|
||||
void test3(Function<Throwable, Integer> x) { }
|
||||
}
|
||||
Reference in New Issue
Block a user