Dumps core when 'def a; a.foo; end; a'

e$B$3$s$P$s$O!#:XF#$H?=$7$^$9!#e(B

e$B<+J,$O2?$b$G$-$J$+$C$?$N$G$9$,!"e(B1.8.5e$B$N%j%j!<%9$Hh$lMM$G$7$?!#$^$?e(B
e$BCN$i$J$$$&$A$Ke(BWebe$B%5%$%H$bAGE($JJ
$K$J$C$F$$$F6C$$$F$$$^$9!#$3$A$i$Ke(B
e$B7H$o$C$?J}!9$b!"K\Ev$K$*Hh$lMM$G$7$?!#e(B

e$B<+J,$O?tG/A0$Ke(BRubye$B$rCN$C$F$+$iDI$$$+$1B3$1$FMh$^$7$?!#>/$7$G$be(B
e$B%3%_%e%K%F%#$N$*Lr$KN)$F$?$i$H;W$$2?$+$7$i$G$-$k$3$H$rC5$7$Fe(B
e$BMh$?$N$G$9$,!"$d$O$jHsNO$J<+J,$N$G$-$k;v$OK\Ev$K>/$J$$$b$N$G$9!#e(B
e$B$G$9$,$G$-$k$3$H$7$+$G$-$J$$$o$1$G!"$3$l$+$i$b$G$-$k$3$H$r0l$De(B
e$B$R$H$DC5$7$F9T$-$?$$$H;W$$$^$9!#e(B

e$B$H!“BLJ8$,D9$/$J$j$9$_$^$;$s!#0J2<K\Bj$J$N$G$9$,!”$$$D$N4V$K$+e(B
trunke$B$G0J2<$N$h$&$K$9$k$He(Bcoree$B$rEG$/$h$&$G$9!#e(B1.8e$B$G$O5/$3$j$^$;$s!#e(B

$ ruby-trunk -ve ‘def a; a.foo; end; a’
ruby 1.9.0 (2006-09-20) [i686-linux]
e$B%;%0%a%s%F!<%7%g%s0cH?$G$9e(B (core dumped)
$

"foo"e$B$r4{B8$N%a%=%C%I$KJQ$($F$bF1MM$G$9!#e(B

e$B<+J,$NCN$jF@$k8B$j$NCN<1$r;H$C$Fe(Bgdbe$B$GC5$C$F$_$k$H!"$I$&$d$ie(Brb_eval()
e$B$NBhFs0z?t$NCM$,0[>o$K>.$5$/8+$($^$9!#$3$l$O@5>o$J$b$N$G$7$g$&$+!#e(B

$ gdb ruby-trunk core
GNU gdb 6.3-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type “show copying” to see the conditions.
There is absolutely no warranty for GDB. Type “show warranty” for
details.
This GDB was configured as “i386-linux”…Using host libthread_db
library “/lib/tls/libthread_db.so.1”.

Core was generated by `ruby-trunk -ve def a; a.object_id; end; a’.
Program terminated with signal 11, Segmentation fault.

warning: current_sos: Can’t read pathname for load map:
e$BF~NOe(B/e$B=PNO%(%i!<$G$9e(B

Reading symbols from /lib/tls/libdl.so.2…done.
Loaded symbols for /lib/tls/libdl.so.2
Reading symbols from /lib/tls/libcrypt.so.1…done.
Loaded symbols for /lib/tls/libcrypt.so.1
Reading symbols from /lib/tls/libm.so.6…done.
Loaded symbols for /lib/tls/libm.so.6
Reading symbols from /lib/tls/libc.so.6…done.
Loaded symbols for /lib/tls/libc.so.6
Reading symbols from /lib/ld-linux.so.2…done.
Loaded symbols for /lib/ld-linux.so.2
#0 rb_eval (self=1075675500, n=0x22) at …/eval.c:3280
3280 CALLARGS;
(gdb) bt
#0 rb_eval (self=1075675500, n=0x22) at …/eval.c:3280
#1 0x080600a9 in rb_call0 (klass=1075686580, recv=1075675500, id=10801,
oid=10801, argc=0, argv=0x0, block=0x0, body=0x401af0f0, flags=18)
at …/eval.c:5841
#2 0x080609cd in rb_call (klass=1075686580, recv=1075675500, mid=10801,
argc=0, argv=0x0, block=0x0, scope=CALLING_VCALL, iter=0) at
…/eval.c:5975
#3 0x0805a939 in rb_eval (self=1075675500, n=0x22) at ruby.h:752
#4 0x0805a7a7 in rb_eval (self=1075675500, n=0x22) at …/eval.c:3283
#5 0x080600a9 in rb_call0 (klass=1075686580, recv=1075675500, id=10801,
oid=10801, argc=0, argv=0x0, block=0x0, body=0x401af0f0, flags=18)
at …/eval.c:5841
#6 0x080609cd in rb_call (klass=1075686580, recv=1075675500, mid=10801,
argc=0, argv=0x0, block=0x0, scope=CALLING_VCALL, iter=0) at
…/eval.c:5975
#7 0x0805a939 in rb_eval (self=1075675500, n=0x22) at ruby.h:752
#8 0x0805a7a7 in rb_eval (self=1075675500, n=0x22) at …/eval.c:3283
#9 0x080600a9 in rb_call0 (klass=1075686580, recv=1075675500, id=10801,
oid=10801, argc=0, argv=0x0, block=0x0, body=0x401af0f0, flags=18)
at …/eval.c:5841
#10 0x080609cd in rb_call (klass=1075686580, recv=1075675500, mid=10801,
argc=0, argv=0x0, block=0x0, scope=CALLING_VCALL, iter=0) at
…/eval.c:5975
#11 0x0805a939 in rb_eval (self=1075675500, n=0x22) at ruby.h:752
#12 0x0805a7a7 in rb_eval (self=1075675500, n=0x22) at …/eval.c:3283
#13 0x080600a9 in rb_call0 (klass=1075686580, recv=1075675500, id=10801,

(e$B0J2<e(Brb_evale$B$He(Brb_calle$B!"e(Brb_call0e$B$N$_$,2?I42s$bB3$/e(B)

e$B0J>e!"$H$j$"$($:Js9p$5$;$F$$$?$@$-$^$9!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:29594] dumps core when ‘def a; a.foo; end; a’”
on Thu, 21 Sep 2006 02:01:20 +0900, Tadashi S.
[email protected] writes:

|e$B<+J,$O?tG/A0$Ke(BRubye$B$rCN$C$F$+$iDI$$$+$1B3$1$FMh$^$7$?!#>/$7$G$be(B
|e$B%3%_%e%K%F%#$N$*Lr$KN)$F$?$i$H;W$$2?$+$7$i$G$-$k$3$H$rC5$7$Fe(B
|e$BMh$?$N$G$9$,!“$d$O$jHsNO$J<+J,$N$G$-$k;v$OK\Ev$K>/$J$$$b$N$G$9!#e(B
|e$B$G$9$,$G$-$k$3$H$7$+$G$-$J$$$o$1$G!”$3$l$+$i$b$G$-$k$3$H$r0l$De(B
|e$B$R$H$DC5$7$F9T$-$?$$$H;W$$$^$9!#e(B

e$B$"$j$,$H$&$4$6$$$^$9!#e(B

|e$B$H!“BLJ8$,D9$/$J$j$9$_$^$;$s!#0J2<K\Bj$J$N$G$9$,!”$$$D$N4V$K$+e(B
|trunke$B$G0J2<$N$h$&$K$9$k$He(Bcoree$B$rEG$/$h$&$G$9!#e(B1.8e$B$G$O5/$3$j$^$;$s!#e(B
|
|$ ruby-trunk -ve ‘def a; a.foo; end; a’
|ruby 1.9.0 (2006-09-20) [i686-linux]
|e$B%;%0%a%s%F!<%7%g%s0cH?$G$9e(B (core dumped)
|$
|
|"foo"e$B$r4{B8$N%a%=%C%I$KJQ$($F$bF1MM$G$9!#e(B

e$B<j85$G$Oe(B"stack level too deep
(SystemStackError)“e$B$H$$$&%(%i!<e(B
e$B$K$J$j$^$9!#e(Bae$B%a%=%C%I$NCf$GL5>r7o$Ke(Bae$B$r8F$s$G$$$k$s$GL58B:F5"e(B
e$B$K$J$C$F$$$k$+$i$G$9!#%l%7!<%P$NI>2A$N;~E@$G:F5”$7$F$$$^$9$+e(B
e$B$i!“e(Bfooe$B$KEv$?$kItJ,$,$J$s$G$”$C$F$bF1$8$G$9$M!#e(B

e$B<B$O!“%9%?%C%/%l%Y%k$N%A%'%C%/$OKh2s$d$k$H=E2a$.$k$N$G$+$J$je(B
e$B4V0z$$$F$$$k$N$G$9$,!”$3$N%A%'%C%/$N4V$K%9%?%C%/$r>CHq$7$9$.e(B
e$B$k$He(Bsegmentation
faulte$B$K$J$j$^$9!#$3$l$Oe(BYARVe$B$K$G$b$J$i$J$$8Be(B
e$B$jD>$;$J$$e(B(e$B4{CN$Ne(B)e$B%P%0$G$9!#e(B

|e$B<+J,$NCN$jF@$k8B$j$NCN<1$r;H$C$Fe(Bgdbe$B$GC5$C$F$_$k$H!"$I$&$d$ie(Brb_eval()
|e$B$NBhFs0z?t$NCM$,0[>o$K>.$5$/8+$($^$9!#$3$l$O@5>o$J$b$N$G$7$g$&$+!#e(B

e$B$3$l$OFf$G$9$,e(B(e$BK\Ev$Ke(Bn=0x22e$B$J$i:F5"$9$kA0$KMn$A$F$k$O$:e(B)e$B!“$e(B
e$B$=$i$/:GE,2=$N1F6A$G$O$J$$$G$7$g$&$+!#e(B-O2e$B%
%W%7%g%s$r30$7$Fe(B
e$B%3%s%Q%$%k$9$k$H!”$b$&$A$g$C$H>o<1E*$J0z?t$,8+$l$k$N$G$O$J$$e(B
e$B$+$HA[A|$7$^$9!#e(B

                            e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)

e$B$3$s$P$s$O!":XF#$G$9!#e(B

On Thu, 21 Sep 2006 07:47:58 +0900
Yukihiro M. [email protected] wrote:

e$B<B$O!“%9%?%C%/%l%Y%k$N%A%'%C%/$OKh2s$d$k$H=E2a$.$k$N$G$+$J$je(B
e$B4V0z$$$F$$$k$N$G$9$,!”$3$N%A%'%C%/$N4V$K%9%?%C%/$r>CHq$7$9$.e(B
e$B$k$He(Bsegmentation faulte$B$K$J$j$^$9!#$3$l$Oe(BYARVe$B$K$G$b$J$i$J$$8Be(B
e$B$jD>$;$J$$e(B(e$B4{CN$Ne(B)e$B%P%0$G$9!#e(B

e$B$J$k$[$I!"$3$A$i$ON;2r$7$^$7$?!#e(B

e$B$3$l$OFf$G$9$,e(B(e$BK\Ev$Ke(Bn=0x22e$B$J$i:F5"$9$kA0$KMn$A$F$k$O$:e(B)e$B!"$*e(B
e$B$=$i$/:GE,2=$N1F6A$G$O$J$$$G$7$g$&$+!#e(B

e$B$O$$!"$$C$7$c$k$H$$j$G$7$?!#e(B-O0e$B$K$9$k$H@5>o$K%(%i!<$H$J$j$^$7$?!#e(B

$ ruby-trunk -ve ‘def a; a.foo; end; a’
ruby 1.9.0 (2006-09-22) [i686-linux]
-e:1:in a': stack level too deep (SystemStackError) from -e:1:in a’
from -e:1

e$B$A$J$_$K%3%s%Q%$%i$N%P!<%8%g%s$O$3$s$J46$8$G$7$?!#e(B

$ gcc --version|head -1
gcc (GCC) 3.3.5 (Debian 1:3.3.5-13)

e$B$H$$$&$3$H$G!"!VFCDj$N4D6-$@$H4{CN$N%P%0$,=P$d$9$/$J$k!W$H$$$&e(B
e$B$@$1$G$9$M!#$I$&$b$*A{$,$;$$$?$7$^$7$?!#e(B