From: usa@... Date: 2017-06-30T10:36:09+00:00 Subject: [ruby-dev:50156] [Ruby trunk Bug#12492] RUBY_DEBUG=gc_stress dumps core Issue #12492 has been updated by usa (Usaku NAKAMURA). Backport changed from 2.1: REQUIRED, 2.2: REQUIRED, 2.3: REQUIRED to 2.1: REQUIRED, 2.2: REQUIRED, 2.3: DONE ruby_2_3 r59215 merged revision(s) 55429. ---------------------------------------- Bug #12492: RUBY_DEBUG=gc_stress dumps core https://bugs.ruby-lang.org/issues/12492#change-65569 * Author: shyouhei (Shyouhei Urabe) * Status: Closed * Priority: Normal * Assignee: * Target version: * ruby -v: ruby 2.4.0dev (2016-05-09 trunk 55419) [x86_64-darwin15] * Backport: 2.1: REQUIRED, 2.2: REQUIRED, 2.3: DONE ---------------------------------------- 次のようにすると core を吐きます。 ``` zsh % PATH="/usr/bin:$PATH" RUBY_DEBUG=gc_stress /usr/bin/lldb -- ./ruby -e 'p GC.stress' (lldb) target create "./ruby" Current executable set to './ruby' (x86_64). (lldb) settings set -- target.run-args "-e" "p GC.stress" (lldb) run Process 15385 launched: './ruby' (x86_64) Process 15385 stopped * thread #1: tid = 0x5a843, 0x00000001001b4dda ruby`rb_const_defined(klass=4320291960, id=3643) + 106 at variable.c:3082, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x10) frame #0: 0x00000001001b4dda ruby`rb_const_defined(klass=4320291960, id=3643) + 106 at variable.c:3082 3079 st_table * 3080 rb_st_copy(VALUE obj, struct st_table *orig_tbl) 3081 { -> 3082 st_table *new_tbl = st_copy(orig_tbl); 3083 st_foreach(new_tbl, tbl_copy_i, (st_data_t)obj); 3084 return new_tbl; 3085 } (lldb) bt * thread #1: tid = 0x5a843, 0x00000001001b4dda ruby`rb_const_defined(klass=4320291960, id=3643) + 106 at variable.c:3082, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x10) * frame #0: 0x00000001001b4dda ruby`rb_const_defined(klass=4320291960, id=3643) + 106 at variable.c:3082 frame #1: 0x000000010002d6b8 ruby`rb_define_module(name="Kernel") + 40 at class.c:773 frame #2: 0x00000001000d4287 ruby`InitVM_Object + 263 at object.c:3407 frame #3: 0x000000010009853d ruby`rb_call_inits + 29 at inits.c:23 frame #4: 0x000000010006789b ruby`ruby_setup + 155 at eval.c:60 frame #5: 0x0000000100067909 ruby`ruby_init + 9 at eval.c:76 frame #6: 0x000000010021369d ruby`main(argc=, argv=) + 77 at main.c:35 frame #7: 0x00007fff9c00f5ad libdyld.dylib`start + 1 frame #8: 0x00007fff9c00f5ad libdyld.dylib`start + 1 (lldb) ``` [ruby-dev:41536](http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/41536) が再発しているのではないでしょうか。 -- https://bugs.ruby-lang.org/