Cómo pasar funciones para funcionar en Kotlin

Quiero pasar una o más funciones a una function, pero siempre que sea una function literal o una function de package está funcionando, pero cuando lo cambio a una function de una class específica (function de miembro) tengo los siguientes problemas

supongamos que tengo estas dos funciones

fun foo() { //doSomething } fun bar(function: () -> Unit) { //anotherThing! function() } 

cuando llamo

 bar(foo()) 

o

 bar(::foo) 

He encontrado una discrepancia de tipo (Obligatorio: () -> Unidad, Encontrado: Unidad)

Nota: No quiero resolverlo así

 bar( { foo() } ) 

o

 bar { foo() }