------- Comment #19 from rguenth at gcc dot gnu dot org  2007-01-05 13:46 
-------
So the proposed patch (for all branches) is:

Index: tree.c
===================================================================
*** tree.c      (revision 120477)
--- tree.c      (working copy)
*************** get_narrower (tree op, int *unsignedp_pt
*** 5485,5494 ****
        {
          if (first)
            uns = DECL_UNSIGNED (TREE_OPERAND (op, 1));
!         win = build3 (COMPONENT_REF, type, TREE_OPERAND (op, 0),
!                       TREE_OPERAND (op, 1), NULL_TREE);
!         TREE_SIDE_EFFECTS (win) = TREE_SIDE_EFFECTS (op);
!         TREE_THIS_VOLATILE (win) = TREE_THIS_VOLATILE (op);
        }
      }
    *unsignedp_ptr = uns;
--- 5485,5491 ----
        {
          if (first)
            uns = DECL_UNSIGNED (TREE_OPERAND (op, 1));
!         win = fold_convert (type, op);
        }
      }
    *unsignedp_ptr = uns;


-- 


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

Reply via email to