[Bug fortran/35723] New: Can't use run-time array element in character declaration
dick dot hendrickson at gmail dot com
gcc-bugzilla@gcc.gnu.org
Thu Mar 27 20:34:00 GMT 2008
The following program gives an error message for valid use of
an array element in an expression for an automatic character
array.
The error message is repeated twice.
Changing from a run-time subscript in the parameter array to a
constant fixes the problem.
Dick Hendrickson
program try_vf0016
! fails on Windows XP
! gcc version 4.4.0 20080312 (experimental) [trunk revision 133139]
! syntax error for valid syntax
call vf0016( 1, 2, 3)
end
SUBROUTINE VF0016(nf1,nf2,nf3)
CHARACTER(LEN=9,KIND=1),DIMENSION(3), PARAMETER
$ :: TEST_STRINGS =
$ (/' HI','ABC ',' CDEFG '/)
CHARACTER :: TEST_ARRAY
$(LEN_TRIM(ADJUSTL(TEST_STRINGS(nf1))), ! changing nf1 to 1 fixes it
$ SUM(LEN_TRIM(ADJUSTL(TEST_STRINGS))),
$ LEN_TRIM(ADJUSTL(ADJUSTR(TEST_STRINGS(3)))),
$ SUM(LEN_TRIM(ADJUSTL(ADJUSTR(TEST_STRINGS(NF1:NF3:NF2))))) )
print *, 2, 10, 5, 7
print *, shape (test_array)
end
C:\g_experiments\gfortran>gfortran vf0016.f
vf0016.f:14.24:
$(LEN_TRIM(ADJUSTL(TEST_STRINGS(nf1))), ! changing nf1 to 1 fixes
1
Error: Variable 'test_strings' cannot appear in the expression at (1)
vf0016.f:14.24:
$(LEN_TRIM(ADJUSTL(TEST_STRINGS(nf1))), ! changing nf1 to 1 fixes
1
Error: Variable 'test_strings' cannot appear in the expression at (1)
--
Summary: Can't use run-time array element in character
declaration
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dick dot hendrickson at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35723
More information about the Gcc-bugs
mailing list