Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/lambda/highlighting/VoidCompatibility.java
anna 709b6166be lambda: void-compatibility check for expression's lambda void type conditional
(cherry picked from commit 76bab4d85984e95279b0358b53ff85734c4589a5)
2013-11-25 16:48:01 +01:00

19 lines
640 B
Java

public class Main {
interface I<T> {
void m(T t);
}
static void foo() {}
{
String s = "";
I<Object> arr1 = <error descr="Incompatible return type String in lambda expression">(t) -> s</error>;
I<Object> arr2 = (t) -> s.toString();
I<Integer> i1 = <error descr="Incompatible return type int in lambda expression">i -> i * 2</error>;
I<Integer> i2 = <error descr="Incompatible return type int in lambda expression">i -> 2 * i</error>;
I<Integer> i3 = <error descr="Incompatible return type void in lambda expression">i -> true ? foo() : foo()</error>;
}
}