view gcc/testsuite/gfortran.dg/char_length_14.f90 @ 118:fd00160c1b76

ifdef TARGET_64BIT
author mir3636
date Tue, 27 Feb 2018 15:01:35 +0900
parents 04ced10e8804
children 84e7813d76e9
line wrap: on
line source

! { dg-do run }
! PR35937, in which letting the length of 'c' to kind = 8 would
! screw up the interface and would cause an ICE. Note that this is
! actually the example of comment #4.
!
! Contributed by Thomas Koenig <tkoenig@gcc.gnu.org>
!
program main
  implicit none
  if (f5 ('1') .ne. "a") call abort
  if (len (f5 ('1')) .ne. 1) call abort
  if (f5 ('4') .ne. "abcd") call abort
  if (len (f5 ('4')) .ne. 4) call abort
contains
  function f5 (c)
    character(len=1_8) :: c
    character(len=scan('123456789', c)) :: f5
    integer :: i
    do i = 1, len (f5)
       f5(i:i) = char (i+96)
    end do
  end function f5
end program main