ハッシュのイテレート中に、そのハッシュのある要素を削除して、
他のハッシュへreplaceするとAbortします。
(この報告を最後に、当分の間休みます。)

h  = { 10 => 100, 20 => 200 }
h2 = { }

h.each { |k, v|
  if (k == 10)
    h.delete(10)
    h2.replace(h)  # => Abort core dumped
  end
}


--- hash.c.orig	Tue Feb 13 14:10:43 2001
+++ hash.c	Fri Jun  1 17:26:24 2001
@@ -510,7 +510,9 @@
 replace_i(key, val, hash)
     VALUE key, val, hash;
 {
-    rb_hash_aset(hash, key, val);
+    if (key != Qundef)
+	rb_hash_aset(hash, key, val);
+
     return ST_CONTINUE;
 }
 
----
小迫@ソフネック   渋谷区恵比寿1-15-1