diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d5046c4c801c4c1db429ee09aeb19ec556e8f7e1..4d284e25ad3c6f8d435c6dcbf541a7fee22aa36b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-01-24  Richard Henderson  <rth@redhat.com>
+
+	* genextract.c (VEC_safe_set_locstr): Take VEC by reference;
+	update all callers.
+
 2006-01-23  Paolo Bonzini  <bonzini@gnu.org>
 
         PR rtl-optimization/25890
diff --git a/gcc/genextract.c b/gcc/genextract.c
index 319a0b0bfa96b321db8402f48a958f9f4028c16b..4ef4d982ca69f8b3c20113b332bc60fa420e05af 100644
--- a/gcc/genextract.c
+++ b/gcc/genextract.c
@@ -187,18 +187,18 @@ gen_insn (rtx insn, int insn_code_number)
    exist and be NULL, or not yet exist within the vector.  In the latter
    case the vector is enlarged as appropriate.  */
 static void
-VEC_safe_set_locstr (VEC(locstr,heap) *v, unsigned int ix, char *str)
+VEC_safe_set_locstr (VEC(locstr,heap) **vp, unsigned int ix, char *str)
 {
-  if (ix < VEC_length (locstr, v))
+  if (ix < VEC_length (locstr, *vp))
     {
-      gcc_assert (VEC_index (locstr, v, ix) == 0);
-      VEC_replace (locstr, v, ix, str);
+      gcc_assert (VEC_index (locstr, *vp, ix) == 0);
+      VEC_replace (locstr, *vp, ix, str);
     }
   else
     {
-      while (ix > VEC_length (locstr, v))
-	VEC_safe_push (locstr,heap, v, 0);
-      VEC_safe_push (locstr,heap, v, str);
+      while (ix > VEC_length (locstr, *vp))
+	VEC_safe_push (locstr, heap, *vp, 0);
+      VEC_safe_push (locstr, heap, *vp, str);
     }
 }
 
@@ -235,13 +235,13 @@ walk_rtx (rtx x, struct accum_extract *acc)
 
     case MATCH_OPERAND:
     case MATCH_SCRATCH:
-      VEC_safe_set_locstr (acc->oplocs, XINT (x, 0),
+      VEC_safe_set_locstr (&acc->oplocs, XINT (x, 0),
 			   VEC_char_to_string (acc->pathstr));
       break;
 
     case MATCH_OPERATOR:
     case MATCH_PARALLEL:
-      VEC_safe_set_locstr (acc->oplocs, XINT (x, 0),
+      VEC_safe_set_locstr (&acc->oplocs, XINT (x, 0),
 			   VEC_char_to_string (acc->pathstr));
 
       base = (code == MATCH_OPERATOR ? '0' : 'a');