The following programme
program checkarrsize
implicit none
double precision a(10,10)
call sub (a)
contains
subroutine sub(a)
double precision a(*)
a(20) = 0
end subroutine sub
end program checkarrsize
passes a two-dimensional array to a subroutine that expects a one-dimensional
assumed size array. When I compile this with
$ ~/gcc/bin/gfortran --version
GNU Fortran 95 (GCC) 4.2.0 20060329 (experimental)
$ ~/gcc/bin/gfortran -fbounds-check -o checkarrsize checkarrsize.f90
and run it, then I receive the run-time error message
$ ./checkarrsize
Fortran runtime error: Array reference out of bounds
--
Summary: -fbounds-check is too strict for assumed size arrays
Product: gcc
Version: 4.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: schnetter at aei dot mpg dot de
GCC build triplet: i386-apple-darwin8.5.2
GCC host triplet: i386-apple-darwin8.5.2
GCC target triplet: i386-apple-darwin8.5.2
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27161