Re: Baffling error message and code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 03/18/10 11:53, Steve Teale wrote:
As I've said before, I am trying to get the GDC implementation that
worked with 4.3, working with 4.4.

The function it is compiling is to my mind not very well written - kind
of mixed up. But the error message is even more confusing:

-c ../../../libphobos/std/stream.d
In file included from<builtin>:2:
../../../libphobos/std/stream.d: In member function ‘vreadf’:
../../../libphobos/std/stream.d:692: internal compiler error: in
insert_into_preds_of_block, at tree-ssa-pre.c:3114

The offending code in tree-ssa-pre.c is:

   FOR_EACH_EDGE (pred, ei, block->preds)
     {
       pre_expr ae = avail[pred->src->index];
       gcc_assert (get_expr_type (ae) == type ||
           useless_type_conversion_p (type, get_expr_type (ae)));

If anyone has any understanding of what is happening here and what the
assert is intended to prevent, your help would be most welcome.
Looks like it's trying to catch cases where types do not match. I'm pretty sure PRE isn't going to insert type conversions, so the types must match -- presumably the assert indicates that code elsewhere is supposed to ensure the types match and when the assert triggers that indicates a bug elsewhere in PRE.

jeff

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux