Fix for KT-7544: Backend fails when inlining nested calls with reified type parameter and default value parameter
#KT-7544 Fixed
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
//NO_CHECK_LAMBDA_INLINING
|
||||
import test.*
|
||||
|
||||
val x: () -> String = foo<String>()
|
||||
|
||||
fun box(): String {
|
||||
return x()
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package test
|
||||
|
||||
inline fun <reified R> foo() = bar<R>() {"OK"}
|
||||
inline fun <reified E> bar(inlineOptions(InlineOption.ONLY_LOCAL_RETURN) y: () -> String) = {
|
||||
null is E
|
||||
run(y)
|
||||
}
|
||||
|
||||
public inline fun <T> call(f: () -> T): T = f()
|
||||
@@ -0,0 +1,8 @@
|
||||
//NO_CHECK_LAMBDA_INLINING
|
||||
import test.*
|
||||
|
||||
inline fun <reified R> foo() = bar<R, String>() {"OK"}
|
||||
|
||||
fun box(): String {
|
||||
return foo<String>()()
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package test
|
||||
|
||||
inline fun <reified R, T> bar(inlineOptions(InlineOption.ONLY_LOCAL_RETURN) tasksFactory: () -> T) = {
|
||||
null is R
|
||||
run(tasksFactory)
|
||||
}
|
||||
|
||||
public inline fun <T> call(f: () -> T): T = f()
|
||||
|
||||
Reference in New Issue
Block a user