aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gfortran.dg/bounds_check_strlen_6.f90
blob: c46bfe2db2318bcf0f307e6b419248fe5aae0185 (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
! { dg-do run }
! { dg-options "-fbounds-check" }

! PR fortran/37746
! Ensure that too long or matching string lengths don't trigger the runtime
! error for matching string lengths, if the dummy argument is neither
! POINTER nor ALLOCATABLE or assumed-shape.
! Also check that absent OPTIONAL arguments don't trigger the check.

MODULE m
CONTAINS

  SUBROUTINE test (str, opt)
    IMPLICIT NONE
    CHARACTER(len=5) :: str
    CHARACTER(len=5), OPTIONAL :: opt
  END SUBROUTINE test

END MODULE m

PROGRAM main
  USE m
  IMPLICIT NONE
  CALL test ('abcde')  ! String length matches.
  CALL test ('abcdef') ! String too long, is ok.
END PROGRAM main