fun foo)
fun @[a] T.foo(a : ) : bar
fun @[a()] T.foo<>(a : foo) : bar
fun @[a()] T.foo<T, , T>(a : foo) : bar
fun @[a()] T.foo<, T, , T>(a : foo) : bar
fun @[a()] T.foo<T, T>(, a : foo, , a: b) : bar

fun foo() : = a;
fun foo() = ;

fun <T> foo<D>()
fun <T> foo<D()
fun <T> A.<foo()
