When I try the following test program, a value is stored into the first element of the complex array, even though the array section is zero sized. It fails with variables for the section subscripts and works if I use explicit constants for the subscripts.
Dick Hendrickson -------------------------------------------------- C:\g_experiments\gfortran>gfortran ha0020.f C:\g_experiments\gfortran>a first test 1 (-1.00000000 , 0.0000000 ) second test ---------------------------------------------------------- program try_ha0020 call ha0020(1,10,-1,2,-3) end program SUBROUTINE HA0020(nf1,nf10,mf1,nf2,mf3) COMPLEX XCA(20), xda(20) do I = 1,20 xca(i) = i xda(i) = -i enddo XCA(NF1:NF10:MF1) = XDA(NF1:NF2:MF3) !fails print *, 'first test' DO J1 = 1,20 if (xca(j1) .ne. j1) print *, j1, xca(j1) enddo do I = 1,20 xca(i) = i xda(i) = -i enddo xca( 1: 10: -1) = xda( 1: 2: -3) !works print *, 'second test' DO J1 = 1,20 if (xca(j1) .ne. j1) print *, j1, xca(j1) enddo END SUBROUTINE -- Summary: assignment to run-time zero-sized complex section stores a value 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=35682