Re: internal compiler error: in avail_expr_eq, at tree-ssa-dom.c:2055

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

 



John Fine <johnsfine@xxxxxxxxxxx> writes:

> The thing I'm compiling is too complex (and proprietary) to even
> attempt to create an example I could provide in a bug report.
>
> I'm using gcc4.3.2
>
> The error message is
>
> internal compiler error: in avail_expr_eq, at tree-ssa-dom.c:2055
>
> The reported line in my file being compiled (with all the names changed) is
> template<> inline void A<B>::C(D& E, F G)
>
> Where
> A is a class template
> B and D are simple classes
> F is a typedef defined in a base class of A (as a pointer to a simple class)
>
> That line is correctly followed by the function body.
>
> That same construct (changing only B) appears in hundreds of other places with no problems.
>
> Can you give me any suggestions on what to try and/or generally what the error message might mean?

An internal compiler error means a bug in the compiler.  It's
essentially impossible to say anything useful without a test case.  We
try to eliminate all known internal compiler errors before a release,
replacing them by an error message if nothing else.  So this is most
likely something new that we haven't seen before.  The line number is
meaningless except to indicate the function--the error could be
triggered by any of the code in that function or in functions that it
calls which have been inlined.

The specific problem seems to be that two statements compared as equal
but had a different hash code.  I have no idea what caused that--it
could even be due to memory corruption elsewhere in the compiler.

This probably won't help much, but I expect that you can avoid this by
compiling without optimization.

Ian

[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