Array#unshift dumps core

e$B$$$^$$$G$9!#e(B

e$B$“$kDxEY$NBg$-$5$NG[Ns$re(B splat e$B$GJL$NG[Ns$Ke(B unshift
e$B$9$k$H%”%!<%H$7$^e(B
e$B$7$?!#$h$/J,$+$C$F$^$;$s$,!“0J2<$N$h$&$J46$8$G$9!#B>$K2?$+<($9$Y$->pJse(B
e$B$,$”$l$P65$($F$/$@$5$$!#e(B

$ gdb miniruby
GNU gdb 6.7.1-debian
Copyright (C) 2007 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type “show
copying”
and “show warranty” for details.
This GDB was configured as “i486-linux-gnu”…
Using host libthread_db library “/lib/i686/cmov/libthread_db.so.1”.
(gdb) run -ve’[].unshift(*[0]128)’
Starting program: /var/tmp/ruby/ruby1.9/miniruby
-ve’[].unshift(
[0]*128)’
[Thread debugging using libthread_db enabled]
[New Thread 0xb7d7d6b0 (LWP 23902)]
[New Thread 0xb7f59b90 (LWP 23905)]
ruby 1.9.0 (2008-02-21 revision 15376) [i686-linux]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7d7d6b0 (LWP 23902)]
0xb7dee31c in free () from /lib/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7dee31c in free () from /lib/i686/cmov/libc.so.6
#1 0x08086336 in ruby_xfree (x=0xfffffff9) at …/trunk/gc.c:321
#2 0x08113e6c in env_free (ptr=0x81af5a0) at …/trunk/vm.c:104
#3 0x08086acf in rb_gc_call_finalizer_at_exit () at …/trunk/gc.c:2024
#4 0x0807b03f in ruby_cleanup (ex=0) at …/trunk/eval.c:178
#5 0x0807b19b in ruby_run_node (n=0xb79eaf90) at …/trunk/eval.c:258
#6 0x0805b140 in main (argc=2, argv=0xbf83fdc4, envp=0xbf83fdd0) at
…/trunk/main.c:35
(gdb) run -ve’[].unshift(*[0]192)’
The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /var/tmp/ruby/ruby1.9/miniruby
-ve’[].unshift(
[0]*192)’
[Thread debugging using libthread_db enabled]
[New Thread 0xb7dea6b0 (LWP 23912)]
[New Thread 0xb7fc6b90 (LWP 23913)]
ruby 1.9.0 (2008-02-21 revision 15376) [i686-linux]
:17: [BUG] native_mutex_destroy return non-zero: 16
ruby 1.9.0 (2008-02-21 revision 15376) [i686-linux]

– control frame ----------
c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP :17

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7dea6b0 (LWP 23912)]
0xb7e55c50 in ?? () from /lib/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7e55c50 in ?? () from /lib/i686/cmov/libc.so.6
#1 0x00000000 in ?? ()
(gdb)