void control(alias f)()
if (isCallable!f)
{
f();
}
void control(void function() f)
{
f();
}
control(Function f) => f();
def control(f) do
f()
end
module x
implicit none
contains
subroutine control(f)
interface
subroutine f()
end subroutine f
end interface
call f
end subroutine control
end module x
module x
implicit none
contains
subroutine control(f)
interface
subroutine f()
end subroutine f
end interface
call f
end subroutine control
end module x