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

            Bug ID: 57896
           Summary: ICE in in expand_expr_real_2
           Product: gcc
           Version: 4.8.1
            Status: UNCONFIRMED
          Severity: minor
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zeccav at gmail dot com

Created attachment 30504
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30504&action=edit
C code causing an ICE in  expand_expr_real_2

The attached code causes an ICE in in expand_expr_real_2,
This is from testsuite/gcc.target/vperm-v4si-2.c
The ICE is maybe due to wrong index at cfgexpand.c:4329
I put 

 gcc_assert ((int)  ((enum tree_code) (t)->base.code) < sizeof_tree_code_type);

before "if (IS_TYPE_OR_DECL_P (t))" and I got the backtrace in the bottom
of the attached file. 
I defined sizeof_tree_code_type in tree.h and tree.c

const int sizeof_tree_code_type=sizeof(tree_code_type);

I am sorry I was not able to produce a shorter test case.

Reply via email to