------- Comment #2 from dominiq at lps dot ens dot fr 2010-01-24 23:15 ------- Confirmed. I think this is due to revision 156195. I also see the same ICE for the test in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42418#c1 (with the comments removed). For both cases the backtrace is:
(gdb) run pr42858.f90 Starting program: /opt/gcc/gcc4.5c/libexec/gcc/x86_64-apple-darwin10/4.5.0/f951 pr42858.f90 Reading symbols for shared libraries .++++++++++++..... done Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000098 0x00000001000083d4 in gfc_array_dimen_size (array=0x141817620, dimen=0, result=0x7fff5fbfe620) at ../../_clean/gcc/fortran/array.c:2059 2059 if (spec_dimen_size (array->value.function.esym->as, dimen, result) (gdb) bt #0 0x00000001000083d4 in gfc_array_dimen_size (array=0x141817620, dimen=0, result=0x7fff5fbfe620) at ../../_clean/gcc/fortran/array.c:2059 #1 0x000000010002a71c in gfc_check_conformance (op1=0x141815fd0, op2=<value temporarily unavailable, due to optimizations>, optype_msgid=<value temporarily unavailable, due to optimizations>) at ../../_clean/gcc/fortran/expr.c:2879 #2 0x000000010002a8fb in gfc_check_assign (lvalue=0x141815fd0, rvalue=0x141817620, conform=1) at ../../_clean/gcc/fortran/expr.c:3032 #3 0x0000000100080e1a in resolve_code (code=<value temporarily unavailable, due to optimizations>, ns=<value temporarily unavailable, due to optimizations>) at ../../_clean/gcc/fortran/resolve.c:7926 #4 0x00000001000813bc in gfc_resolve_blocks (b=0x141815f20, ns=0x142079000) at ../../_clean/gcc/fortran/resolve.c:7764 #5 0x000000010007f682 in resolve_code (code=0x141816bb0, ns=<value temporarily unavailable, due to optimizations>) at ../../_clean/gcc/fortran/resolve.c:7985 #6 0x0000000100081546 in resolve_codes (ns=0x142079000) at ../../_clean/gcc/fortran/resolve.c:12337 #7 0x0000000100081458 in resolve_codes (ns=0x142077200) at ../../_clean/gcc/fortran/resolve.c:12323 #8 0x000000010007445e in gfc_resolve (ns=0x142077200) at ../../_clean/gcc/fortran/resolve.c:12364 #9 0x0000000100068c13 in gfc_parse_file () at ../../_clean/gcc/fortran/parse.c:4201 #10 0x00000001000a1c1c in gfc_be_parse_file (set_yydebug=<value temporarily unavailable, due to optimizations>) at ../../_clean/gcc/fortran/f95-lang.c:239 #11 0x00000001006d0cda in toplev_main (argc=2, argv=0x7fff5fbfed18) at ../../_clean/gcc/toplev.c:1053 #12 0x00000001000012a4 in start () -- dominiq at lps dot ens dot fr changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at net-b dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42858