------- Comment #3 from rguenth at gcc dot gnu dot org  2007-08-20 15:39 -------
Ah no, this is a bug in fold-const introduced by the pplus merge.  Fix:

@@ -9541,7 +9547,9 @@ fold_binary (enum tree_code code, tree t
          tree arg01 = fold_convert (sizetype, TREE_OPERAND (arg0, 1));
          tree arg00 = TREE_OPERAND (arg0, 0);
          inner = fold_build2 (PLUS_EXPR, sizetype, arg01, fold_convert
(sizetype, arg1));
-         return fold_build2 (POINTER_PLUS_EXPR, type, arg00, inner);
+         return fold_convert (type,
+                              fold_build2 (POINTER_PLUS_EXPR,
+                                           TREE_TYPE (arg00), arg00, inner));
        }

       /* PTR_CST +p CST -> CST1 */


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org


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

Reply via email to