Create warning for old lambda syntax.

This commit is contained in:
Stanislav Erokhin
2015-03-17 14:20:55 +03:00
parent c24c3daf54
commit 47e8b1e77c
9 changed files with 95 additions and 4 deletions
@@ -0,0 +1,24 @@
val receiver = { <!DEPRECATED_LAMBDA_SYNTAX!>Int.()<!> -> }
val receiverWithParameter = { <!DEPRECATED_LAMBDA_SYNTAX!>Int.(<!CANNOT_INFER_PARAMETER_TYPE!>a<!>)<!> -> }
val receiverAndReturnType = { <!DEPRECATED_LAMBDA_SYNTAX!>Int.(): Int<!> -> 5 }
val receiverAndReturnTypeWithParameter = { <!DEPRECATED_LAMBDA_SYNTAX!>Int.(a: Int): Int<!> -> 5 }
val returnType = { <!DEPRECATED_LAMBDA_SYNTAX!>(): Int<!> -> 5 }
val returnTypeWithParameter = { <!DEPRECATED_LAMBDA_SYNTAX!>(b: Int): Int<!> -> 5 }
val receiverWithFunctionType = { <!DEPRECATED_LAMBDA_SYNTAX!>((Int) -> Int).()<!> -> }
val parenthesizedParameters = { <!DEPRECATED_LAMBDA_SYNTAX!>(a: Int)<!> -> }
val parenthesizedParameters2 = { <!DEPRECATED_LAMBDA_SYNTAX!>(<!CANNOT_INFER_PARAMETER_TYPE!>b<!>)<!> -> }
val none = { -> }
val parameterWithFunctionType = { <!UNRESOLVED_REFERENCE!>a<!>: ((Int) -> Int) -> <!SYNTAX!><!>} // todo fix parser
val newSyntax = { a: Int -> }
val newSyntax1 = { <!CANNOT_INFER_PARAMETER_TYPE!>a<!>, <!CANNOT_INFER_PARAMETER_TYPE!>b<!> -> }
val newSyntax2 = { a: Int, b: Int -> }
val newSyntax3 = { <!CANNOT_INFER_PARAMETER_TYPE!>a<!>, b: Int -> }
val newSyntax4 = { a: Int, <!CANNOT_INFER_PARAMETER_TYPE!>b<!> -> }
@@ -0,0 +1,18 @@
package
internal val newSyntax: (kotlin.Int) -> kotlin.Unit
internal val newSyntax1: (???, ???) -> kotlin.Unit
internal val newSyntax2: (kotlin.Int, kotlin.Int) -> kotlin.Unit
internal val newSyntax3: (???, kotlin.Int) -> kotlin.Unit
internal val newSyntax4: (kotlin.Int, ???) -> kotlin.Unit
internal val none: () -> kotlin.Unit
internal val parameterWithFunctionType: () -> ((kotlin.Int) -> kotlin.Int) -> [ERROR : No type element]
internal val parenthesizedParameters: (kotlin.Int) -> kotlin.Unit
internal val parenthesizedParameters2: (???) -> kotlin.Unit
internal val receiver: kotlin.Int.() -> kotlin.Unit
internal val receiverAndReturnType: kotlin.Int.() -> kotlin.Int
internal val receiverAndReturnTypeWithParameter: kotlin.Int.(kotlin.Int) -> kotlin.Int
internal val receiverWithFunctionType: (kotlin.Int) -> kotlin.Int.() -> kotlin.Unit
internal val receiverWithParameter: kotlin.Int.(???) -> kotlin.Unit
internal val returnType: () -> kotlin.Int
internal val returnTypeWithParameter: (kotlin.Int) -> kotlin.Int