diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5111278f5169134470c4b27f10b946e7bbcd9a3d..44dea511931b2952ed181565112f49240388b851 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-12-11  Daniel Berlin  <dberlin@dberlin.org>
+
+	* tree-ssa-structalias.c (handle_ptr_arith): Return false when we
+	can't handle the pointer arithmetic.
+
 2006-12-11  Diego Novillo  <dnovillo@redhat.com>
 
 	* doc/tree-ssa.texi: Update documentation for virtual operands
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c
index 8ef421722c9c96eaba9af7cc2c39ec8637a46c9b..068972fe2364810cbde5caef0ff9e0c5544c2557 100644
--- a/gcc/tree-ssa-structalias.c
+++ b/gcc/tree-ssa-structalias.c
@@ -2871,6 +2871,8 @@ handle_ptr_arith (VEC (ce_s, heap) *lhsc, tree expr)
     {
       rhsoffset = TREE_INT_CST_LOW (op1) * BITS_PER_UNIT;
     }
+  else
+    return false;
 
 
   for (i = 0; VEC_iterate (ce_s, lhsc, i, c); i++)