http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60795

--- Comment #4 from Kergonath <kergonath at me dot com> ---
The slightly modified version:
module m
contains
    subroutine allocate_array(s_array)
        character(:), dimension(:), allocatable, intent(out) :: s_array

        allocate(character(2) :: s_array(10))
        write(*,*) len(s_array), size(s_array)
    end subroutine
end module

program stringtest
    use m
    character(:), dimension(:), allocatable :: s4
    call allocate_array(s4)
    write(*,*) len(s4), size(s4)
 end program

gives the result:
           0          10
           0          10

when compiled with: gfortran -o stringtest stringtest.f90

but gives
           0          10
       32767          10

when using the -pg option.

Using -Wall does only show the following warning, which looks similar to that
in PR56670:

stringtest.f90: In function 'allocate_array':
stringtest.f90:7:0: warning: '.s_array' may be used uninitialized in this
function [-Wmaybe-uninitialized]
         write(*,*) len(s_array), size(s_array)
 ^

Reply via email to