------- Comment #3 from burnus at gcc dot gnu dot org 2009-10-20 21:16 ------- Reduced testcase. The problem is - as often - the empty array section. With 4.1, 4.2 and 4.3 it works, while with 4.4 and 4.5 I get a segfault.
module m implicit none contains pure function str_vs(vs) result(s) character, dimension(:), intent(in) :: vs character(len=size(vs)) :: s s = transfer(vs, s) end function str_vs subroutine has_key_ns(uri, localname) character(len=*), intent(in) :: uri, localname end subroutine end module m use m implicit none character, dimension(:), pointer :: QName integer :: n allocate(qname(6)) qname = (/ 'a','b','c','d','e','f' /) n = 0 call has_key_ns(str_vs(qname(1:n-1)),"") deallocate(qname) end -- burnus at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Known to fail| |4.4.1 4.5.0 Known to work| |4.1.3 4.2.1 4.3.4 Summary|segfault due to wrong code |[4.4/4.5 Regression] Wrong |in TRANSFER? |code due to TRANSFER of | |EMPTY array section Target Milestone|--- |4.4.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41772