This is an old revision of the document!
module HelloWorld
  procedure(), pointer :: ptr
  contains
  subroutine Hello1()
    print *,'Ahoj'
  end subroutine
  subroutine Hello2(a)
    integer, intent(in) ::  a
    print *,'Nazdar',a
  end subroutine
end module
program main
  use HelloWorld
  implicit none
  ptr => Hello1
  call ptr
  ptr => Hello2
  call ptr(2)
end program
zdenka@pc209:~/simulations/fireball/ptr_func$ ifort -c main.f90 -o main.o;ifort main.o -o test;./test Ahoj Nazdar 2