------- Comment #2 from rguenth at gcc dot gnu dot org  2009-05-20 09:20 -------
Confirmed.  We endlessly recurse in folding

#2  0x000000000076b333 in fold_binary (code=BIT_AND_EXPR, type=0x7ffff5f5f540, 
    op0=0x7ffff7ff9580, op1=0x7ffff5f76870)
    at /space/rguenther/src/svn/trunk/gcc/fold-const.c:11388
11388                     return fold_build2 (BIT_AND_EXPR, type, tem,
(gdb) l
11383                                            TREE_OPERAND (arg0, 1));
11384                         tem = fold_convert (type, tem);
11385                       }
11386                     else
11387                       tem = op0;
11388                     return fold_build2 (BIT_AND_EXPR, type, tem,
11389                                         build_int_cst_type (TREE_TYPE
(op1),
11390                                                             newmask));
11391                   }
11392               }
(gdb) call debug_generic_expr (op0)
(<unnamed-unsigned:4>) ((unsigned char) c >> 4)
(gdb) call debug_generic_expr (op1)
15
(gdb) call debug_generic_expr (tem)
(<unnamed-unsigned:4>) ((unsigned char) c >> 4)
(gdb) p newmask
$1 = 255

and 255 is truncated to 15 again.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|c                           |middle-end
     Ever Confirmed|0                           |1
           Keywords|                            |ice-on-valid-code
      Known to fail|                            |4.3.3 4.4.0
      Known to work|                            |4.2.4
   Last reconfirmed|0000-00-00 00:00:00         |2009-05-20 09:20:22
               date|                            |
            Summary|segfault with bitfields in  |[4.3/4.4/4.5 Regression]
                   |structs                     |segfault with bitfields in
                   |                            |structs
   Target Milestone|---                         |4.3.4


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

Reply via email to