summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/char_length_9.f90
blob: dbec68cd8c3916d6230c6e34a7a4b5806c931f57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
! { dg-do compile }
! Test the fix for a regression caused by the first fix of PR31879.
! Reported by Tobias Burnus <burnus@gcc.gnu.org>
!
MODULE input_val_types
  IMPLICIT NONE
  INTEGER, PARAMETER :: default_string_length=80
  TYPE val_type
    CHARACTER(len=default_string_length), DIMENSION(:), POINTER :: c_val
  END TYPE val_type
CONTAINS
  SUBROUTINE val_get (val, c_val)
    TYPE(val_type), POINTER                  :: val
    CHARACTER(LEN=*), INTENT(out)            :: c_val
    INTEGER                                  :: i, l_out
    i=1
    c_val((i-1)*default_string_length+1:MIN (l_out, i*default_string_length)) = &
               val%c_val(i)(1:MIN (80, l_out-(i-1)*default_string_length))
  END SUBROUTINE val_get
END MODULE input_val_types

! { dg-final { cleanup-modules "input_val_types" } }