class Test { | |
interface I0 { | |
void m(); | |
} | |
interface I1 { | |
void m(Object a); | |
} | |
interface I2 { | |
void m(Object a1, Object a2); | |
} | |
interface IVarargs { | |
void m(Object... as); | |
} | |
void call(I0 p) { } | |
void call(I1 p) { } | |
void call(I2 p) { } | |
void call(IVarargs p) { } | |
void test() { | |
call(() -> { }); | |
call<error descr="Ambiguous method call: both 'Test.call(I1)' and 'Test.call(IVarargs)' match">(p1 -> { })</error>; | |
call((p1, p2) -> {}); | |
} | |
} |