Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gfortran.dg/pr17612.f90 @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
! { dg-do run } ! PR 17612 ! We used to not determine the length of character-valued expressions ! correctly, leading to a segfault. program prog character(len=2), target :: c(4) type pseudo_upf character(len=2), pointer :: els(:) end type pseudo_upf type (pseudo_upf) :: p type t character(5) :: s(2) end type type (t) v ! A full arrays. c = (/"ab","cd","ef","gh"/) call n(p) if (any (c /= p%els)) STOP 1 ! An array section that needs a new array descriptor. v%s(1) = "hello" v%s(2) = "world" call test (v%s) contains subroutine n (upf) type (pseudo_upf), intent(inout) :: upf upf%els => c return end subroutine n subroutine test(s) character(len=*) :: s(:) if ((len (s) .ne. 5) .or. (any (s .ne. (/"hello", "world"/)))) STOP 2 end subroutine end program