------- Comment #4 from fxcoudert at gcc dot gnu dot org 2006-10-23 17:11 ------- Further reduced testcase, confirmed on ppc-darwin:
type element_t integer :: gid end type element_t type(element_t) :: element(1) call hash_read_key(element%gid) call hash_read_key(element%gid) call hash_read_key(element%gid) contains subroutine hash_read_key(key) integer, intent(out) :: key(1) end subroutine hash_read_key end I'll also note that the following slightly modified testcase segfaults: type element_t integer :: gid end type element_t contains subroutine hash_read_key(key) integer, intent(out) :: key(1) end subroutine hash_read_key type(element_t) :: element(1) call hash_read_key(element%gid) call hash_read_key(element%gid) call hash_read_key(element%gid) end Program received signal SIGSEGV, Segmentation fault. 0x0805b323 in variable_decl (elem=Variable "elem" is not available. ) at ../../../trunk/gcc/fortran/decl.c:1424 1424 if (current_ts.type == BT_DERIVED (gdb) where #0 0x0805b323 in variable_decl (elem=Variable "elem" is not available. ) at ../../../trunk/gcc/fortran/decl.c:1424 #1 0x0805bcbc in gfc_match_data_decl () at ../../../trunk/gcc/fortran/decl.c:3381 #2 0x0808716a in match_word (str=Variable "str" is not available. ) at ../../../trunk/gcc/fortran/parse.c:66 #3 0x0808770d in decode_statement () at ../../../trunk/gcc/fortran/parse.c:135 #4 0x0808809e in next_statement () at ../../../trunk/gcc/fortran/parse.c:499 #5 0x0808a3cd in parse_contained (module=0) at ../../../trunk/gcc/fortran/parse.c:2796 -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2006-10-23 15:58:29 |2006-10-23 17:11:08 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29565