diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 438accad4fb1d677e18c3ac684aeefe526a296fd..6578a4d821c1f087d481cd1fe3c921842aa6a390 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,7 @@
+1998-05-28  Jason Merrill  <jason@yorick.cygnus.com>
+
+	* index-prop: New file.
+
 Sat May 23 23:38:49 1998  Matthias Klose  <doko@cs.tu-berlin.de>
 
 	* test_summary: find good awk (copied from warn_summary).
diff --git a/contrib/index-prop b/contrib/index-prop
new file mode 100755
index 0000000000000000000000000000000000000000..a169b5726440b572d9a038635a63d3e705759cf1
--- /dev/null
+++ b/contrib/index-prop
@@ -0,0 +1,25 @@
+#! /usr/bin/perl -wi
+# Fix up the output of cvs diff -c so that it works with patch.
+# We do this by propagating the full pathname from the Index: line
+# into the diff itself.
+#
+# Thrown together by Jason Merrill <jason@cygnus.com>
+
+while (<>)
+{
+  if (/^Index: (.*)/) 
+    {
+      $full = $1;
+      print;
+      for (1..7)
+	{
+	  $_ = <>;
+	  s/ [^\t]+\t/ $full\t/;
+	  print;
+	}
+    }
+  else
+    {
+      print;
+    }
+}