mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-10 18:09:38 +07:00
exact method refs most specific: void compatibility
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
class Test {
|
||||
|
||||
interface I { void i_bar(); }
|
||||
interface I1<T> { T i1_bar(); }
|
||||
|
||||
private void m(I i) {System.out.println(i);}
|
||||
private void <warning descr="Private method 'm(Test.I1<java.lang.String>)' is never used">m</warning>(I1<String> i1) {System.out.println(i1);}
|
||||
|
||||
void test() {
|
||||
m(Test::foo);
|
||||
}
|
||||
|
||||
public static int foo() {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
class Test1 {
|
||||
|
||||
interface I { void i_bar(); }
|
||||
interface I1<T> { T i1_bar(); }
|
||||
|
||||
void m(I i) { System.out.println(i);}
|
||||
void m(I1<String> i1) { System.out.println(i1);}
|
||||
|
||||
void test() {
|
||||
m(Test1::foo);
|
||||
}
|
||||
|
||||
public static String foo() {return "";}
|
||||
}
|
||||
|
||||
class Test2 {
|
||||
|
||||
interface I { void i_bar(); }
|
||||
interface I1<T> { T i1_bar(); }
|
||||
|
||||
void m(I i) { System.out.println(i);}
|
||||
void m(I1<String> i1) { System.out.println(i1);}
|
||||
|
||||
void test() {
|
||||
m(Test2::foo);
|
||||
}
|
||||
|
||||
public static void foo() {}
|
||||
}
|
||||
Reference in New Issue
Block a user