On Sun, May 20, 2012 at 7:24 PM, Nathan Sidwell <nat...@acm.org> wrote: > In building a ppc cross compiler using a freshly built native compiler, I > encountered an ICE in iterative_hash_expr compiling c-lex.c. I extracted > the attached testcase, showing the problem is with statement expressions. > Investigation showed I_H_E seeing BLOCK and BIND_EXPR nodes, which is was > unprepared for. These two nodes are never considered equal by > operand_equal_p, so we don't need to look into them further to refine the > hash. > > I'm not sure why a native i686-pc-linux-gnu bootstrap doesn't encounter this > problem. > > The attached patch resolves the ICE. built and tested on i686-pc-linux-gnu, > ok?
Hmm - I think this papers over the issue that the CONSTRUCTOR is not properly gimplified - it still contains a TARGET_EXPR which is not valid GIMPLE. Why is that TARGET_EXPR not gimplified? Richard. > nathan