Kotlin no puede inferir el tipo cuando utiliza la reference de método en Flowable

Tengo este código en Java:

Flowable.just(1,2,3) .flatMap(Flowable::just); 

y este código en Kotlin:

 Flowable.just(1,2,3) .flatMap(Flowable::just) 

Mientras que el código Java comstack bien, el comstackdor de Kotlin dice: "Error: (47, 30) Kotlin: un tipo de argumento esperado para la class Flowable: Publisher definido en io.reactivex"

Sin embargo, esto comstack bien:

 Flowable.just(1,2,3) .flatMap { Flowable.just(it) } 

¿Qué estoy haciendo mal o cómo Kotlin no puede inferir el tipo de Flowable automáticamente?

Esta no es toda una respuesta, pero es demasiado larga para un comentario.

En el primer caso que no se comstack, el error tiene que ver con que Kotlin no selecciona el método correcto de Flowable::just para pasar a Flowable.flatMap(...) . Hay 10 diferentes methods Flowable.just(...) definidos donde la diferencia es la cantidad de arguments.

En el segundo caso, está pasando Flowable.flatMap() una lambda que llama explícitamente a la versión de parámetro único de Flowable.just() (es decir, la versión de un único parámetro).

En el primer caso, Kotlin aparentemente está eligiendo uno de los otros diez methods Flowable::just lugar de search uno que coincida con la firma esperada por Flowable.flatMap() (de los cuales hay 12 definidos). Por el contrario, Java puede deducir (a partir de la firma del parámetro) cuál de las muchas sobrecargas de .just() para pasar.

Esta puede ser una deficiencia de Kotlin, pero me gustaría escuchar lo que uno de los expertos en comstackdores de Kotlin tiene que decir.