[Bug fortran/32464] [4.3 regression] ICE: USE in contained subroutine
dfranke at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Jun 22 18:26:00 GMT 2007
------- Comment #4 from dfranke at gcc dot gnu dot org 2007-06-22 18:26 -------
Reduced testcase and backtrace:
module gfcbug64_mod1
contains
function copy (d)
real, intent(in) :: d(:)
real :: copy(size (d))
copy = d
end function copy
end module gfcbug64_mod1
module gfcbug64_mod2
contains
subroutine foo (x_o)
real, intent(in) :: x_o(5)
integer :: s(size (x_o))
contains
subroutine bar ()
use gfcbug64_mod1, only: copy
end subroutine bar
end subroutine foo
end module gfcbug64_mod2
Program received signal SIGSEGV, Segmentation fault.
0x08095f00 in gfc_resolve_expr (e=0x88d1920)
at ../../../gcc/gcc/fortran/resolve.c:3265
3265 gcc_assert (expr && sym == expr->symtree->n.sym);
(gdb) bt
#0 0x08095f00 in gfc_resolve_expr (e=0x88d1920)
at ../../../gcc/gcc/fortran/resolve.c:3265
#1 0x08051f8b in resolve_array_bound (e=0x88d1920, check_constant=0)
at ../../../gcc/gcc/fortran/array.c:218
#2 0x0805202b in gfc_resolve_array_spec (as=0x88d1858, check_constant=0)
at ../../../gcc/gcc/fortran/array.c:252
#3 0x0809acac in resolve_symbol (sym=0x88d0c08)
at ../../../gcc/gcc/fortran/resolve.c:6444
#4 0x080a5327 in traverse_ns (st=0x88d0c90, func=0x809ab40 <resolve_symbol>)
at ../../../gcc/gcc/fortran/symbol.c:2731
#5 0x080983fa in resolve_types (ns=0x88d0800)
at ../../../gcc/gcc/fortran/resolve.c:7403
#6 0x080984c7 in resolve_types (ns=0x88d0218)
at ../../../gcc/gcc/fortran/resolve.c:7414
#7 0x080984c7 in resolve_types (ns=0x888d1b0)
at ../../../gcc/gcc/fortran/resolve.c:7414
#8 0x0809ab1c in gfc_resolve (ns=0x888d1b0)
at ../../../gcc/gcc/fortran/resolve.c:7477
#9 0x0808e6ec in gfc_parse_file () at ../../../gcc/gcc/fortran/parse.c:3256
#10 0x080b005d in gfc_be_parse_file (set_yydebug=0)
at ../../../gcc/gcc/fortran/f95-lang.c:301
#11 0x08312f28 in toplev_main (argc=2, argv=0xbff77ce4)
at ../../../gcc/gcc/toplev.c:1051
Due to the backtrace, I'd think this is related to PR30746.
Adding Paul Thomas as CC.
--
dfranke at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |dfranke at gcc dot gnu dot
| |org, pault at gcc dot gnu
| |dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32464
More information about the Gcc-bugs
mailing list