blob: 576d5be7775571cdc47c1b5c640f744f17a6798c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
! { dg-do compile }
!
! PR fortran/38095
!
! Contributed by Vivek Rao
!
! Compiling the program below gave an ICE
!
module bar
implicit none
contains
elemental function trim_append(xx,yy) result(xy)
character (len=*), intent(in) :: xx,yy
character (len=len(xx) + len(yy)) :: xy
xy = trim(xx) // yy
end function trim_append
function same(xx) result(yy)
character (len=*), intent(in) :: xx(:)
character (len=len(xx)) :: yy(size(xx))
yy = [xx]
end function same
subroutine foo(labels)
character (len=*), intent(in) :: labels(:)
print*,"size(labels)=",size(labels)
end subroutine foo
subroutine xmain()
call foo(trim_append(["a"],same(["b"])))
end subroutine xmain
end module bar
program main
use bar
call xmain()
end program main
! { dg-final { cleanup-modules "bar" } }
|