diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/proc_ptr_comp_46.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/proc_ptr_comp_46.f90 | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/proc_ptr_comp_46.f90 b/gcc/testsuite/gfortran.dg/proc_ptr_comp_46.f90 new file mode 100644 index 00000000000..c01b8221210 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/proc_ptr_comp_46.f90 @@ -0,0 +1,29 @@ +! { dg-do compile } +! +! PR 77596: [F03] procedure pointer component with implicit interface can point to a function +! +! Contributed by toK <t.kondic@leeds.ac.uk> + +program xxx + implicit none + + type tf + procedure(), nopass, pointer :: fp + end type tf + + call ass() + +contains + + integer function ff(x) + integer, intent(in) :: x + ff = x + 1 + end function ff + + subroutine ass() + type(tf) :: p + p%fp=>ff ! { dg-error "is not a subroutine" } + call p%fp(3) + end subroutine ass + +end |