OSDN Git Service

gcc/fortran:
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gfortran.dg / argument_checking_1.f90
1 ! { dg-do run }
2 !
3 ! PR fortran/30940
4 program main
5   implicit none
6   character(len=10) :: digit_string = '123456789', str
7   character :: digit_arr(10)
8   call copy(digit_string, digit_arr)
9   call copy(digit_arr,str)
10   if(str /= '123456789') call abort()
11   digit_string = 'qwertasdf'
12   call copy2(digit_string, digit_arr)
13   call copy2(digit_arr,str)
14   if(str /= 'qwertasdf') call abort()
15   digit_string = '1qayxsw23e'
16   call copy3("1qayxsw23e", digit_arr)
17   call copy3(digit_arr,str)
18   if(str /= '1qayxsw23e') call abort()
19 contains
20   subroutine copy(in, out)
21     character, dimension(*)  :: in
22     character, dimension(10) :: out
23     out = in(:10)
24   end subroutine copy
25   subroutine copy2(in, out)
26     character, dimension(2,*)  :: in
27     character, dimension(2,5) :: out
28     out(1:2,1:5) = in(1:2,1:5)
29   end subroutine copy2
30   subroutine copy3(in, out)
31     character(len=2), dimension(5)  :: in
32     character(len=2), dimension(5) :: out
33     out = in
34   end subroutine copy3
35 end program main