This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/34885] [4.3 Regression] ICE in copy_reference_ops_from_ref, at tree-ssa-sccvn.c:574
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 21 Jan 2008 12:58:33 -0000
- Subject: [Bug c/34885] [4.3 Regression] ICE in copy_reference_ops_from_ref, at tree-ssa-sccvn.c:574
- References: <bug-34885-12387@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from rguenth at gcc dot gnu dot org 2008-01-21 12:58 -------
So, either the source is invalid and the C FE should diagnose it, or we can
'work around' this (and similarly bogus) issues by using VIEW_CONVERT_EXPR
to make the IL valid again.
Ha, and we do. With -pedantic-errors:
psc.3.i: At top level:
psc.3.i:11: error: function types not truly compatible in ISO C
the code in c-typeck.c:composite_type
/* Given wait (union {union wait *u; int *i} *)
and wait (union wait *),
prefer union wait * as type of parm. */
if (TREE_CODE (TREE_VALUE (p1)) == UNION_TYPE
&& TREE_VALUE (p1) != TREE_VALUE (p2))
{
...
and now you think the middle-end should simply "deal with it"? Bah!
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords|ice-on-valid-code |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34885