¿Por qué el parámetro Integer del método Java se asigna a Int y no al tipo de plataforma?

Inspirado porotra pregunta.

Enfastutil biblioteca hayIntArrayList clase que tiene un método con la siguiente firma Java:

public void push(Integer o)

Desde Kotlin se ve como

push(o: Int)

¿Hay alguna razón específica por la cual esInt y no tipo de plataformaInt!?

Esperaba que fuerapush(o: Int!) al menos porque un método con la misma firma definida en la fuente Java dentro del proyecto con fuentes Kotlin tieneInt! como tipo de parámetro visto desde Kotlin (incluso definido en un módulo diferente, ¡e incluso importado del jar de ese módulo!).

Además, el comportamiento descrito causapush(Integer o) entrar en conflicto conpush(int o) (en la misma clase) que tieneInt parámetro legalmente: ambos son vistos comopush(o: Int). Si hubieraInt! paraInteger, no habría conflicto (también intenté definir este par de métodos en mi código; todavía funciona como esperaba, hayInt!)

La versión de Kotlin es1.0.2.

Dependencia de Gradle parafastutil:

compile group: 'it.unimi.dsi', name: 'fastutil', version: '7.0.12'