https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80257
--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- What is the output of subroutine ppTest(f) implicit none external f call f() end subroutine ppTest Program RunTimeCheck implicit none external :: ppTest procedure(), pointer :: pptr pptr => sub call ppTest(pptr) contains subroutine sub() print *, 'Hello World' end subroutine sub end Program RunTimeCheck ?