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

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

! { dg-do run }
!
! PR fortran/89266 - ICE with TRANSFER of len=0 character array constructor

program test
  implicit none
  character(*), parameter :: n = ''
  character(*), parameter :: o = transfer ([''], n)
  character(*), parameter :: p = transfer ( n , n)
  character(*), parameter :: q = transfer ([n], n)
  character(6), save      :: r = transfer ([''], n)
  character(6), save      :: s = transfer ( n , n)
  character(6), save      :: t = transfer ([n], n)
  integer,      parameter :: a(0) = 0
  integer,      parameter :: b(0) = transfer (a, a)
  integer,      save      :: c(0) = transfer (a, a)
  if (len (o) /= 0) stop 1
  if (len (p) /= 0) stop 2
  if (len (q) /= 0) stop 3
  if (r /= "") stop 4
  if (s /= "") stop 5
  if (t /= "") stop 6
  if (size (b) /= 0 .or. any (b /= 0)) stop 7
  if (size (c) /= 0 .or. any (c /= 0)) stop 8
end program test