Don't "Remove explicit type" for callable with function initializer

So #KT-12168 Fixed
This commit is contained in:
Toshiaki Kameyama
2018-04-11 16:27:03 +03:00
committed by Mikhail Glukhikh
parent 5204c73bec
commit 3221fbdca9
15 changed files with 91 additions and 13 deletions
@@ -0,0 +1 @@
val foo: <caret>() -> String = { "" }
@@ -0,0 +1 @@
val foo = { "" }
@@ -0,0 +1 @@
val foo: <caret>(Int, Int) -> String = fun(i: Int, j: Int): String { return (i + j).toString() }
@@ -0,0 +1 @@
val foo = fun(i: Int, j: Int): String { return (i + j).toString() }
@@ -0,0 +1,2 @@
// IS_APPLICABLE: false
val foo: <caret>(Int, Int) -> String = fun(i, j: Int): String { return (i + j).toString() }
@@ -0,0 +1,2 @@
// IS_APPLICABLE: false
fun foo(): <caret>(Int) -> String = { it.toString() }
@@ -0,0 +1 @@
val foo: <caret>() -> String = fun(): String { return "" }
@@ -0,0 +1 @@
val foo = fun(): String { return "" }
@@ -0,0 +1 @@
val foo: <caret>(Int, Int) -> String = { i: Int, j: Int -> (i + j).toString() }
@@ -0,0 +1 @@
val foo = { i: Int, j: Int -> (i + j).toString() }
@@ -0,0 +1,2 @@
// IS_APPLICABLE: false
val foo: <caret>(Int, Int) -> String = { i, j: Int -> (i + j).toString() }
@@ -0,0 +1,2 @@
// IS_APPLICABLE: false
val foo: <caret>(Int) -> String = { it.toString() }
@@ -0,0 +1,3 @@
// IS_APPLICABLE: false
// WITH_RUNTIME
val foo: <caret>(Pair<Int, Int>) -> String = { (i: Int, j: Int) -> (i + j).toString() }