See the bit of code below dealing with the initialization of array contents with the "ubound" results called on another array. If the "module" statements plus the write(*,*) statements are both commented out, then this bit of code compiles. However, if either (a) this code is made into a module, or (b) it remains as a program but the 'write(*,*)' statement is put back in, then the compilation fails with an "internal compiler error: in gfc_conv_array_initializer, at fortran/trans-array.c:3460"
!MODULE TEST_CERES PROGRAM Test_ceres implicit none real, dimension(10, 10, 10, 3, 4) :: TCg_coef integer, parameter, dimension(5) :: & TCg_bband_coef_ranks = ubound(TCg_coef) !write(*,*) 'array_ranks = ',TCg_bband_coef_ranks end program Test_ceres !end module Test_ceres -- Summary: internal compiler error on array initialization statement using 'ubound' Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: Catherine dot M dot Moroney at jpl dot nasa dot gov http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31591