[Bug fortran/23922] New: ICE trying to fold_convert a REAL_TYPE to a RECORD_TYPE
steven at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Sep 16 16:30:00 GMT 2005
MODULE bug
IMPLICIT NONE
TYPE :: my_type
REAL :: x
END TYPE
TYPE (my_type), DIMENSION(3) :: t
CONTAINS
SUBROUTINE foo
INTEGER, DIMENSION(8) :: c(3)
t(c)%x = t(c)%x
RETURN
END SUBROUTINE foo
END MODULE bug
-->
Starting program: /space/stevenb/build/gcc/f951 -O t.f90
foo
Breakpoint 1, internal_error (gmsgid=0xb1a07f "in %s, at %s:%d") at
diagnostic.c:534
534 va_start (ap, gmsgid);
(gdb) up
#1 0x000000000058fea3 in fancy_abort (file=0xb27480
"../../mainline/gcc/fold-const.c", line=2028,
function=0xb27cbc "fold_convert") at diagnostic.c:590
590 internal_error ("in %s, at %s:%d", function, trim_filename (file),
line);
(gdb)
#2 0x0000000000621928 in fold_convert (type=0x2a95a67e70, arg=0x2a95a70b40)
at fold-const.c:2028
2028 gcc_unreachable ();
(gdb)
#3 0x000000000048200a in gfc_trans_scalar_assign (lse=0x7fbfffeea0,
rse=0x7fbfffee50, type=BT_REAL)
at trans-expr.c:2550
2550 gfc_add_modify_expr (&block, lse->expr,
(gdb) bt
#0 internal_error (gmsgid=0xb1a07f "in %s, at %s:%d") at diagnostic.c:534
#1 0x000000000058fea3 in fancy_abort (file=0xb27480
"../../mainline/gcc/fold-const.c", line=2028,
function=0xb27cbc "fold_convert") at diagnostic.c:590
#2 0x0000000000621928 in fold_convert (type=0x2a95a67e70, arg=0x2a95a70b40)
at fold-const.c:2028
#3 0x000000000048200a in gfc_trans_scalar_assign (lse=0x7fbfffeea0,
rse=0x7fbfffee50, type=BT_REAL)
at trans-expr.c:2550
#4 0x0000000000482507 in gfc_trans_assignment (expr1=0xe3ac90,
expr2=0xe668c0) at trans-expr.c:2718
#5 0x00000000004826fe in gfc_trans_assign (code=0xe3b8f0) at
trans-expr.c:2770
#6 0x00000000004678d8 in gfc_trans_code (code=0xe3b8f0) at trans.c:493
#7 0x000000000047c333 in gfc_generate_function_code (ns=0xe65d20) at
trans-decl.c:2415
#8 0x0000000000467e04 in gfc_generate_module_code (ns=0xe2d200) at
trans.c:712
#9 0x0000000000443c1a in gfc_parse_file () at parse.c:2637
#10 0x000000000045e868 in gfc_be_parse_file (set_yydebug=0) at f95-lang.c:256
#11 0x0000000000873eda in compile_file () at toplev.c:990
#12 0x00000000008756dd in do_compile () at toplev.c:1933
#13 0x000000000087573f in toplev_main (argc=3, argv=0x7fbffff2b8) at
toplev.c:1965
#14 0x0000000000499c9b in main (argc=3, argv=0x7fbffff2b8) at main.c:35
(gdb) down
#2 0x0000000000621928 in fold_convert (type=0x2a95a67e70, arg=0x2a95a70b40)
at fold-const.c:2028
2028 gcc_unreachable ();
(gdb) p debug_tree (type)
<record_type 0x2a95a67e70 my_type SF
size <integer_cst 0x2a959c5a50 type <integer_type 0x2a959d00b0
bit_size_type> constant invariant 32>
unit size <integer_cst 0x2a959c5570 type <integer_type 0x2a959d0000>
constant invariant 4>
align 32 symtab 0 alias set -1
fields <field_decl 0x2a95a63a80 x
type <real_type 0x2a959de210 real4 SF size <integer_cst 0x2a959c5a50
32> unit size <integer_cst 0x2a959c5570 4>
align 32 symtab 0 alias set -1 precision 32
pointer_to_this <pointer_type 0x2a959de420>>
SF file t.f90 line 0 size <integer_cst 0x2a959c5a50 32> unit size
<integer_cst 0x2a959c5570 4>
align 32 offset_align 128
offset <integer_cst 0x2a959c55a0 constant invariant 0>
bit offset <integer_cst 0x2a959db180 constant invariant 0> context
<record_type 0x2a95a67e70 my_type>>
pointer_to_this <pointer_type 0x2a95a6b160> chain <type_decl 0x2a959e5270
D.806>>
$8 = void
(gdb) p debug_tree (orig)
<real_type 0x2a959de210 real4 SF
size <integer_cst 0x2a959c5a50 type <integer_type 0x2a959d00b0
bit_size_type> constant invariant 32>
unit size <integer_cst 0x2a959c5570 type <integer_type 0x2a959d0000>
constant invariant 4>
align 32 symtab 0 alias set -1 precision 32
pointer_to_this <pointer_type 0x2a959de420>>
$9 = void
(gdb)
This shows up in a SPEC benchmark candidate.
--
Summary: ICE trying to fold_convert a REAL_TYPE to a RECORD_TYPE
Product: gcc
Version: 4.1.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P2
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: steven at gcc dot gnu dot org
CC: gcc-bugs at gcc dot gnu dot org
OtherBugsDependingO 15502
nThis:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23922
More information about the Gcc-bugs
mailing list