------- Comment #2 from rguenth at gcc dot gnu dot org  2006-12-11 16:25 -------
This fixes it:

Index: fold-const.c
===================================================================
*** fold-const.c        (revision 119733)
--- fold-const.c        (working copy)
*************** fold_unary_to_constant (enum tree_code c
*** 12726,12732 ****
  tree
  fold_read_from_constant_string (tree exp)
  {
!   if (TREE_CODE (exp) == INDIRECT_REF || TREE_CODE (exp) == ARRAY_REF)
      {
        tree exp1 = TREE_OPERAND (exp, 0);
        tree index;
--- 12817,12825 ----
  tree
  fold_read_from_constant_string (tree exp)
  {
!   if ((TREE_CODE (exp) == INDIRECT_REF
!        || TREE_CODE (exp) == ARRAY_REF)
!       && !AGGREGATE_TYPE_P (TREE_TYPE (exp)))
      {
        tree exp1 = TREE_OPERAND (exp, 0);
        tree index;


-- 


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

Reply via email to