gcc/gcc/testsuite/gfortran.dg/coarray_failed_images_1.f08

30 lines
1.2 KiB
Plaintext

! { dg-do run }
! { dg-options "-fdump-tree-original -fcoarray=lib -lcaf_single" }
program test_failed_images_1
implicit none
integer :: me,np,stat
character(len=1) :: c
integer, allocatable :: fi(:)
integer(kind=1), allocatable :: sfi(:)
fi = failed_images()
if (size(fi) > 0) error stop "failed_images result shall be empty array"
if (allocated(fi)) error stop "failed_images result shall not be allocated"
sfi = failed_images(KIND=1)
if (size(sfi) > 0) error stop "failed_images result shall be empty array"
if (allocated(sfi)) error stop "failed_images result shall not be allocated"
sfi = failed_images(KIND=8)
if (size(sfi) > 0) error stop "failed_images result shall be empty array"
! The implicit type conversion in the assignment above allocates an array.
! if (allocated(sfi)) error stop "failed_images result shall not be allocated"
end program test_failed_images_1
! { dg-final { scan-tree-dump-times "_gfortran_caf_failed_images \\\(&D\\\.\[0-9\]+, 0B, 0B\\\);" 1 "original" } }
! { dg-final { scan-tree-dump-times "_gfortran_caf_failed_images \\\(&D\\\.\[0-9\]+, 0B, D\\\.\[0-9\]+\\\);" 1 "original" } }
! { dg-final { scan-tree-dump-times "_gfortran_caf_failed_images \\\(&D\\\.\[0-9\]+, 0B, D\\\.\[0-9\]+\\\);" 1 "original" } }