view gcc/testsuite/gfortran.dg/allocate_alloc_opt_11.f90 @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 04ced10e8804
children
line wrap: on
line source

! { dg-do compile }
!
! PR fortran/44556
!
! Contributed by Jonathan Hogg and Steve Kargl.
!
program oh_my
   implicit none
   type a
      integer, allocatable :: b(:), d(:)
      character(len=80) :: err
      character(len=80), allocatable :: str(:)
      integer :: src
   end type a

   integer j
   type(a) :: c
   c%err = 'ok'
   allocate(c%d(1)) 
   allocate(c%b(2), errmsg=c%err, stat=c%d(1)) ! OK
   deallocate(c%b, errmsg=c%err, stat=c%d(1))  ! OK
   allocate(c%b(2), errmsg=c%err, stat=c%b(1)) ! { dg-error "the same ALLOCATE statement" }
   deallocate(c%b, errmsg=c%err, stat=c%b(1))  ! { dg-error "the same DEALLOCATE statement" }
   allocate(c%str(2), errmsg=c%str(1), stat=j) ! { dg-error "the same ALLOCATE statement" }
   deallocate(c%str, errmsg=c%str(1), stat=j)  ! { dg-error "the same DEALLOCATE statement" }
end program oh_my