http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59065
Bug ID: 59065 Summary: questionable bounds for unassociated allocatable/pointer arrays? Product: gcc Version: 4.8.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: zeccav at gmail dot com ! gfortran produces SIGSEV at run time for access to unassociated allocatable/pointer arrays ! questionable bounds for unassociated allocatable/pointer arrays? ! such arrays properties are undefined but I suggest lbound be 1, ubound 0, size 0 ! to minimize damage to erroneous code accessing such arrays ! -fcheck=all does not help ! Linux Fedora 19 bash shell 4.2.45-1 real, pointer :: ap(:)=>null() real, allocatable :: aa(:) print *,lbound(aa),ubound(aa),size(aa) ! displays "0 garbage garbage" should be "1 0 0"? print *,lbound(ap),ubound(ap),size(ap) ! displays "0 0 1" should be "1 0 0"? call sub(aa,ap) contains subroutine sub(va,vp) real, intent(in) :: vp(:) real, intent(in) :: va(:) print *,lbound(va),ubound(va),size(va) ! displays "1 garbage garbage" should be "1 0 0"? print *,lbound(vp),ubound(vp),size(vp) ! displays "1 1 1" should be "1 0 0"? print *,va(1) ! SIGSEGV here -fcheck=all does not detect it print *,vp(1) ! ditto end subroutine end