1.6.7をbuildしてrubiconにかけてみたんですが
Marshal::dump(foo, proc{...})というケースでエラーになりました. 
以下で修正できると思います. 

Index: marshal.c
===================================================================
RCS file: /home/akira/cvs/ruby-src/cvs/ruby/marshal.c,v
retrieving revision 1.26.2.12
diff -u -r1.26.2.12 marshal.c
--- ruby_1_6/marshal.c	28 Feb 2002 06:52:47 -0000	1.26.2.12
+++ ruby_1_6/marshal.c	3 Mar 2002 06:02:23 -0000
@@ -1047,7 +1047,7 @@
 	break;
     }
     if (arg->proc) {
-	rb_funcall(arg->proc, rb_intern("yield"), 1, v);
+	rb_funcall(arg->proc, rb_intern("call"), 1, v);
     }
     return v;
 }


-- 
 やまだ あきら <URL:http://arika.org/ruby/>
 (akira / arika.org, akira / ruby-lang.org, 
  akira / debian.org or akira / linux.or.jp)