llvm-project/flang/test/Semantics/nullify01.f90

43 lines
567 B
Fortran

! RUN: %S/test_errors.sh %s %t %f18
! Test that NULLIFY works
Module share
Real, Pointer :: rp
Procedure(Real), Pointer :: mprp
End Module share
Program nullifytest
Use share
INTEGER, PARAMETER :: maxvalue=1024
Type dt
Integer :: l = 3
End Type
Type t
Type(dt),Pointer :: p
End Type
Type(t),Allocatable :: x(:)
Type(t),Pointer :: y(:)
Type(t),Pointer :: z
Integer, Pointer :: pi
Procedure(Real), Pointer :: prp
Allocate(rp)
Nullify(rp)
Allocate(x(3))
Nullify(x(2)%p)
Nullify(y(2)%p)
Nullify(pi)
Nullify(prp)
Nullify(mprp)
Nullify(z%p)
End Program