# \[Bug #1470\] class definition under the anonymouse module dumps core

**URL:** <https://www.ruby-forum.com/t/bug-1470-class-definition-under-the-anonymouse-module-dumps-core/168032>\
**Category:** Development\
**Created:** [May 15, 2009, 6:03am UTC](https://www.ruby-forum.com/t/bug-1470-class-definition-under-the-anonymouse-module-dumps-core/168032 "2009-05-15T06:03:19Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nobuhiro\_IMAI](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/9f8e36/32.png) [@Nobuhiro\_IMAI](https://www.ruby-forum.com/u/Nobuhiro_IMAI)\
**Post date:** [May 15, 2009, 6:03am UTC](https://www.ruby-forum.com/t/bug-1470-class-definition-under-the-anonymouse-module-dumps-core/168032/1 "2009-05-15T06:03:19Z")

</div>

Bug #1470: class definition under the anonymouse module dumps core  
[http://redmine.ruby-lang.org/issues/show/1470](http://redmine.ruby-lang.org/issues/show/1470)

e$B5/I\<\<Te(B: Nobuhiro IMAI  
e$B%9%F!\<%?%9e(B: Open, e$BM%@hEYe(B: Normal  
ruby -v: ruby 1.9.2dev (2009-05-15 trunk 23428) [i686-linux]

e$BL5L\>%b%8%e!\<%kG[2\<$K%/%i%9$rDj5A$7$h$&$H$9$k$H%3%"%@%s%W$9$k$h$&$G$9!#e(B

$ ./miniruby -e ‘Module.new{|m| class m::C; end}’  
-e:1: [BUG] Segmentation fault  
ruby 1.9.2dev (2009-05-15 trunk 23428) [i686-linux]

## – control frame ---------- c:0007 p:0010 s:0016 b:0016 l:0002fc d:000015 BLOCK -e:1 c:0006 p:---- s:0013 b:0013 l:000012 d:000012 FINISH c:0005 p:---- s:0011 b:0011 l:000010 d:000010 CFUNC :initialize c:0004 p:---- s:0009 b:0009 l:000008 d:000008 CFUNC :new c:0003 p:0015 s:0006 b:0006 l:0002fc d:002304 EVAL -e:1 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH c:0001 p:0000 s:0002 b:0002 l:0002fc d:0002fc TOP :17

-e:1:in `<main>' -e:1:in `new’  
-e:1:in `initialize' -e:1:in `block in ’

## – C level backtrace information

0x819d865 ./miniruby(rb\_vm\_bugreport+0xb5) [0x819d865]  
0x808e39e ./miniruby [0x808e39e]  
0x808e438 ./miniruby(rb\_bug+0x28) [0x808e438]  
0x81317b5 ./miniruby [0x81317b5]  
0xb7fd540c [0xb7fd540c]  
0x8170bd3 ./miniruby [0x8170bd3]  
0x8171103 ./miniruby(rb\_autoload\_load+0x13) [0x8171103]  
0x818e17f ./miniruby [0x818e17f]  
0x8194e52 ./miniruby [0x8194e52]  
0x819611b ./miniruby [0x819611b]  
0x80d1409 ./miniruby [0x80d1409]  
0x8196d39 ./miniruby [0x8196d39]  
0x819720c ./miniruby [0x819720c]  
0x8091612 ./miniruby(rb\_obj\_call\_init+0x42) [0x8091612]  
0x80d26fa ./miniruby(rb\_class\_new\_instance+0x2a) [0x80d26fa]  
0x81895bd ./miniruby [0x81895bd]  
0x819ae96 ./miniruby [0x819ae96]  
0x818e36b ./miniruby [0x818e36b]  
0x8194e52 ./miniruby [0x8194e52]  
0x81950c3 ./miniruby(rb\_iseq\_eval\_main+0x1a3) [0x81950c3]  
0x8091ba7 ./miniruby(ruby\_exec\_node+0x97) [0x8091ba7]  
0x8093336 ./miniruby(ruby\_run\_node+0x46) [0x8093336]  
0x805c670 ./miniruby(main+0x60) [0x805c670]  
0xb7df8775 /lib/i686/cmov/libc.so.6(\_\_libc\_start\_main+0xe5) [0xb7df8775]  
0x805c571 ./miniruby [0x805c571]

[NOTE]  
You may have encountered a bug in the Ruby interpreter or extension  
libraries.  
Bug reports are welcome.  
For details: [http://www.ruby-lang.org/bugreport.html](http://www.ruby-lang.org/bugreport.html)

Aborted (core dumped)  
$ gdb ./miniruby core  
GNU gdb 6.8-debian  
Copyright (C) 2008 Free Software Foundation, Inc.  
License GPLv3+: GNU GPL version 3 or later  
[http://gnu.org/licenses/gpl.html](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”…

warning: Can’t read pathname for load map: Input/output error.  
Reading symbols from /lib/i686/cmov/libpthread.so.0…done.  
Loaded symbols for /lib/i686/cmov/libpthread.so.0  
Reading symbols from /lib/i686/cmov/librt.so.1…done.  
Loaded symbols for /lib/i686/cmov/librt.so.1  
Reading symbols from /lib/i686/cmov/libdl.so.2…done.  
Loaded symbols for /lib/i686/cmov/libdl.so.2  
Reading symbols from /lib/i686/cmov/libcrypt.so.1…done.  
Loaded symbols for /lib/i686/cmov/libcrypt.so.1  
Reading symbols from /lib/i686/cmov/libm.so.6…done.  
Loaded symbols for /lib/i686/cmov/libm.so.6  
Reading symbols from /lib/i686/cmov/libc.so.6…done.  
Loaded symbols for /lib/i686/cmov/libc.so.6  
Reading symbols from /lib/ld-linux.so.2…done.  
Loaded symbols for /lib/ld-linux.so.2  
Reading symbols from  
/home/nov/ruby/lib/ruby/1.9.1/i686-linux/enc/encdb.so…done.  
Loaded symbols for /home/nov/ruby/lib/ruby/1.9.1/i686-linux/enc/encdb.so  
Reading symbols from /lib/libgcc\_s.so.1…done.  
Loaded symbols for /lib/libgcc\_s.so.1  
Core was generated by `./miniruby -e Module.new{|m| class m::C; end}'.  
Program terminated with signal 6, Aborted.  
[New process 19887]  
[New process 19888]  
#0 0xb7fd5424 in \_\_kernel\_vsyscall ()  
(gdb) bt  
#0 0xb7fd5424 in \_\_kernel\_vsyscall ()  
#1 0xb7e0d680 in raise () from /lib/i686/cmov/libc.so.6  
#2 0xb7e10d68 in abort () from /lib/i686/cmov/libc.so.6  
#3 0x0808e43d in rb\_bug (fmt=0x81c4ae9 “Segmentation fault”) at  
…/trunk/error.c:235  
#4 0x081317b5 in sigsegv (sig=11, info=0x9efb40c, ctx=0x9efb48c) at  
…/trunk/signal.c:605  
#5  
#6 st\_lookup (table=0x0, key=472, value=0xbfef1a28) at  
…/trunk/st.c:286  
#7 0x08170bd3 in autoload\_node (mod=, id=11253,  
noload=0) at …/trunk/variable.c:1413  
#8 0x08171103 in rb\_autoload\_load (klass=166336780, id=11253) at  
…/trunk/variable.c:1439  
#9 0x0818e17f in vm\_exec\_core (th=0x9e7e288, initial=) at …/trunk/insns.def:891  
#10 0x08194e52 in vm\_exec (th=0x9e7e288) at …/trunk/vm.c:1078  
#11 0x0819611b in yield\_under (under=,  
self=166336780, values=)  
at …/trunk/vm.c:524  
#12 0x080d1409 in rb\_mod\_initialize (module=166336780) at  
…/trunk/object.c:1386  
#13 0x08196d39 in vm\_call0 (th=0x9e7e288, klass=166388640,  
recv=166336780, id=456, oid=456, argc=0, argv=0xb7d5f024,  
body=0x9eb649c, nosuper=0) at …/trunk/vm\_eval.c:72  
#14 0x0819720c in rb\_call0 (klass=166388640, recv=166336780, mid=456,  
argc=0, argv=0xb7d5f024, scope=1, self=6)  
at …/trunk/vm\_eval.c:249  
#15 0x08091612 in rb\_obj\_call\_init (obj=166336780, argc=0,  
argv=0xb7d5f024) at …/trunk/eval.c:788  
#16 0x080d26fa in rb\_class\_new\_instance (argc=0, argv=0xb7d5f024,  
klass=166388640) at …/trunk/object.c:1490  
#17 0x081895bd in call\_cfunc (func=0x80d26d0 \<rb\_class\_new\_instance\>,  
recv=166388640, len=0, argc=472, argv=0xb7d5f024)  
at …/trunk/vm\_insnhelper.c:286  
#18 0x0819ae96 in vm\_call\_method (th=0x9e7e288, cfp=0xb7ddef78, num=0,  
blockptr=0xb7ddef8d, flag=0, id=968, mn=0x9eb608c,  
recv=166388640) at …/trunk/vm\_insnhelper.c:376  
#19 0x0818e36b in vm\_exec\_core (th=0x9e7e288, initial=) at …/trunk/insns.def:1000  
#20 0x08194e52 in vm\_exec (th=0x9e7e288) at …/trunk/vm.c:1078  
#21 0x081950c3 in rb\_iseq\_eval\_main (iseqval=166337200) at  
…/trunk/vm.c:1294  
#22 0x08091ba7 in ruby\_exec\_node (n=0x9ea1ab0, file=0x0) at  
…/trunk/eval.c:205  
#23 0x08093336 in ruby\_run\_node (n=0x9ea1ab0) at …/trunk/eval.c:233  
#24 0x0805c670 in main (argc=3, argv=0xbfef2a84) at …/trunk/main.c:35  
(gdb)

---

<div class="post-metadata">

**Author:** ![Nobuhiro\_IMAI](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/9f8e36/32.png) [@Nobuhiro\_IMAI](https://www.ruby-forum.com/u/Nobuhiro_IMAI)\
**Post date:** [May 15, 2009, 8:18am UTC](https://www.ruby-forum.com/t/bug-1470-class-definition-under-the-anonymouse-module-dumps-core/168032/2 "2009-05-15T08:18:00Z")

</div>

e$B%A%1%C%He(B #1470 e$B$,99?7$5$l$^$7$?!#e(B (by Nobuyoshi N.)

e$B%9%F!\<%?%9e(B Opene$B$+$ie(BClosede$B$KJQ99e(B  
e$B?JD=e(B % 0e$B$+$ie(B100e$B$KJQ99e(B

## Applied in changeset r23431.

[http://redmine.ruby-lang.org/issues/show/1470](http://redmine.ruby-lang.org/issues/show/1470)
