------- Comment #1 from jakub at gcc dot gnu dot org 2009-03-02 10:52 ------- Introduced in r132969. During esra we have: D.1656_34 = VIEW_CONVERT_EXPR<unsigned int>(screen_3(D)->defaults.attr); D.1657_35 = D.1656_34 >> 23; attr$B23F9_36 = (<unnamed-unsigned:9>) D.1657_35; ... SR.8_37 = attr$B23F9_36 >> 7; SR.9_50 = (unsigned int) SR.8_37; SR.10_51 = SR.9_50 << 23; SR.11_52 = SR.7_49 | SR.10_51; D.1634_19->attr ={v} VIEW_CONVERT_EXPR<struct D>(SR.11_52);
That >> 7 is either wrong, or lacks corresponding << 7. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39339