diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/pointer_init_5.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/pointer_init_5.f90 | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/pointer_init_5.f90 b/gcc/testsuite/gfortran.dg/pointer_init_5.f90 new file mode 100644 index 000000000..beedad27d --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pointer_init_5.f90 @@ -0,0 +1,42 @@ +! { dg-do run } +! +! PR 45290: [F08] pointer initialization +! +! Contributed by Janus Weil <janus@gcc.gnu.org> + +module m + +implicit none + +procedure(f1), pointer :: pp => f1 + +type :: t + procedure(f2), pointer, nopass :: ppc => f2 +end type + +contains + + integer function f1() + f1 = 42 + end function + + integer function f2() + f2 = 43 + end function + +end module + + +program test_ptr_init + +use m +implicit none + +type (t) :: u + +if (pp()/=42) call abort() +if (u%ppc()/=43) call abort() + +end + +! { dg-final { cleanup-modules "m" } } |