This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/42888] [4.5 Regression] ICE in fold_convert_loc, at fold-const.c:2670



------- Comment #7 from janus at gcc dot gnu dot org  2010-01-28 13:02 -------
(In reply to comment #6)
> #0  fold_convert_loc (loc=0, type=0x7ffff7e83498, arg=0x7ffff7f65060) at
> /home/jweil/gcc45/trunk/gcc/fold-const.c:2669
> #1  0x00000000005a088a in gfc_trans_scalar_assign (lse=0x7fffffffd4d0,
> rse=0x7fffffffd520, ts=..., l_is_temp=1 '\001', r_is_var=0 '\000')
>     at /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:4840
> #2  0x000000000059e7eb in gfc_trans_subcomponent_assign (dest=0x7ffff7f6c4c0,
> cm=0x17deab0, expr=0x17dc890) at
> /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:4224
> #3  0x000000000059e9ce in gfc_trans_structure_assign (dest=0x7ffff7f6b5a0,
> expr=0x17dc720) at /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:4265
> #4  0x000000000059eaec in gfc_conv_structure (se=0x7fffffffd780,
> expr=0x17dc720, init=0) at
> /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:4292
> #5  0x000000000059f2f4 in gfc_conv_expr (se=0x7fffffffd780, expr=0x17dc720) at
> /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:4441
> #6  0x000000000056d46b in gfc_add_loop_ss_code (loop=0x7fffffffd940,
> ss=0x17dce70, subscript=0 '\000', where=0x17dc770) at
> /home/jweil/gcc45/trunk/gcc/fortran/trans-array.c:2028
> #7  0x0000000000572a92 in gfc_conv_loop_setup (loop=0x7fffffffd940,
> where=0x17dc770) at /home/jweil/gcc45/trunk/gcc/fortran/trans-array.c:3722
> #8  0x00000000005a1b95 in gfc_trans_assignment_1 (expr1=0x17dc980,
> expr2=0x17dc720, init_flag=1 '\001') at
> /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:5232
> #9  0x00000000005a2316 in gfc_trans_assignment (expr1=0x17dc980,
> expr2=0x17dc720, init_flag=1 '\001') at
> /home/jweil/gcc45/trunk/gcc/fortran/trans-expr.c:5434

The same code path is also taken on the old fortran-dev r152122. The difference
in 'fold_convert_loc' is: While for the old rev. 'type' and 'orig' are both
INTEGER_TYPE, 'orig' is REAL_TYPE on current trunk. I'll try to find out how
that comes about.

Btw: Isn't this whole thing of 'integer component with real initializer'
invalid in some way? Shouldn't we at least throw a warning?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42888


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]