# \[Bug #3295\] make test aborted

**URL:** <https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596>\
**Category:** Development\
**Created:** [May 14, 2010, 3:47pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596 "2010-05-14T15:47:21Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 14, 2010, 3:47pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/1 "2010-05-14T15:47:21Z")

</div>

Bug #3295: make test aborted  
[http://redmine.ruby-lang.org/issues/show/3295](http://redmine.ruby-lang.org/issues/show/3295)

e$B5/I\<\<Te(B: Kazuhiro NISHIYAMA  
e$B%9%F!\<%?%9e(B: Open, e$BM%@hEYe(B: Normal  
Target version: 1.9.2  
ruby -v: ruby 1.9.3dev (2010-05-14 trunk 27796) [i686-linux]

Ubuntu lucid e$B$N4D6-$Ge(B  
[https://wiki.ubuntu.com/CompilerFlags](https://wiki.ubuntu.com/CompilerFlags)  
e$B$Ne(B stack smashing protector (GccSsp)  
e$B$N1F6A$@$H;W$&$N$G$9$,!"e(B  
make test e$B$Ge(B abort e$B$7$^$9!#e(B

% lsb\_release -a  
No LSB modules are available.  
Distributor ID: Ubuntu  
Description: Ubuntu 10.04 LTS  
Release: 10.04  
Codename: lucid  
% gcc -v  
Using built-in specs.  
Target: i486-linux-gnu  
Configured with: …/src/configure -v --with-pkgversion=‘Ubuntu  
4.4.3-4ubuntu5’ --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs  
–enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr  
–enable-shared --enable-multiarch --enable-linker-build-id  
–with-system-zlib --libexecdir=/usr/lib --without-included-gettext  
–enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4  
–program-suffix=-4.4 --enable-nls --enable-clocale=gnu  
–enable-libstdcxx-debug --enable-plugin --enable-objc-gc  
–enable-targets=all --disable-werror --with-arch-32=i486  
–with-tune=generic --enable-checking=release --build=i486-linux-gnu  
–host=i486-linux-gnu --target=i486-linux-gnu  
Thread model: posix  
gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)  
% make test

sample/test.rb:assignment  
…  
sample/test.rb:condition …  
sample/test.rb:if/unless …  
sample/test.rb:case …  
sample/test.rb:while/until …  
sample/test.rb:exception …  
sample/test.rb:array …  
sample/test.rb:hash …  
sample/test.rb:iterator  
…  
sample/test.rb:float  
…  
sample/test.rb:bignum …  
sample/test.rb:string & char  
…  
sample/test.rb:assignment …  
sample/test.rb:call …  
sample/test.rb:proc …  
sample/test.rb:signal …  
sample/test.rb:eval …  
sample/test.rb:system …  
sample/test.rb:const …  
sample/test.rb:clone …  
sample/test.rb:marshal …  
sample/test.rb:pack …  
sample/test.rb:math …  
sample/test.rb:struct …  
sample/test.rb:variable …  
sample/test.rb:trace …  
sample/test.rb:defined? …  
sample/test.rb:alias …  
sample/test.rb:path …  
sample/test.rb:gc …  
test succeeded

test\_attr.rb …  
test\_autoload.rb …  
test\_block.rb …  
test\_class.rb …  
test\_eval.rb …  
test\_exception.rb …  
test\_finalizer.rb .  
test\_flip.rb .  
test\_flow.rb …  
test\_fork.rb …  
test\_gc.rb …  
test\_io.rb …  
test\_jump.rb …  
test\_literal.rb  
…  
test\_load.rb …  
test\_marshal.rb .  
test\_massign.rb …  
test\_method.rb  
…  
test\_objectspace.rb …  
test\_proc.rb …  
test\_struct.rb .  
test\_syntax.rb  
…  
test\_thread.rb …\*\*\* longjmp causes  
uninitialized stack frame _**:  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby terminated  
======= Backtrace: =========  
/lib/tls/i686/cmov/libc.so.6(\_\_fortify\_fail+0x50)[0x4019a350]  
/lib/tls/i686/cmov/libc.so.6(+0xe22ba)[0x4019a2ba]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8168ed4]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8169083]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(rb\_fiber\_resume+0xaf)[0x8169c4f]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x819c74f]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x819d507]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8157b91]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8159f38]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x815d906]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x815f26e]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(rb\_rescue2+0x141)[0x805e1d1]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x814d4c4]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8157b91]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8159f38]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x815d906]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(rb\_iseq\_eval\_main+0x1c7)[0x815dcd7]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x805e422]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(ruby\_run\_node+0x32)[0x805fc32]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(main+0x5a)[0x805d65a]  
/lib/tls/i686/cmov/libc.so.6(\_\_libc\_start\_main+0xe6)[0x400cebd6]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x805d561]  
======= Memory map: ========  
08048000-08212000 r-xp 00000000 fb:00 538613665  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby  
08212000-08213000 r–p 001c9000 fb:00 538613665  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby  
08213000-08214000 rw-p 001ca000 fb:00 538613665  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby  
08214000-08221000 rw-p 00000000 00:00 0  
09654000-0977f000 rw-p 00000000 00:00 0 [heap]  
40000000-4001b000 r-xp 00000000 08:01 10043411 /lib/ld-2.11.1.so  
4001b000-4001c000 r–p 0001a000 08:01 10043411 /lib/ld-2.11.1.so  
4001c000-4001d000 rw-p 0001b000 08:01 10043411 /lib/ld-2.11.1.so  
4001d000-4001e000 r-xp 00000000 00:00 0 [vdso]  
4001e000-40020000 rw-p 00000000 00:00 0  
40020000-40027000 r–s 00000000 08:01 1647078  
/usr/lib/gconv/gconv-modules.cache  
40027000-40028000 —p 00000000 00:00 0  
40028000-4002b000 rw-p 00000000 00:00 0  
4002b000-4002d000 r-xp 00000000 fb:00 807287925  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/encdb.so  
4002d000-4002e000 r–p 00001000 fb:00 807287925  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/encdb.so  
4002e000-4002f000 rw-p 00002000 fb:00 807287925  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/encdb.so  
4002f000-40031000 r-xp 00000000 fb:00 269946659  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/trans/transdb.so  
40031000-40032000 r–p 00001000 fb:00 269946659  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/trans/transdb.so  
40032000-40033000 rw-p 00002000 fb:00 269946659  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/trans/transdb.so  
40039000-4004e000 r-xp 00000000 08:01 10044432  
/lib/tls/i686/cmov/libpthread-2.11.1.so  
4004e000-4004f000 r–p 00014000 08:01 10044432  
/lib/tls/i686/cmov/libpthread-2.11.1.so  
4004f000-40050000 rw-p 00015000 08:01 10044432  
/lib/tls/i686/cmov/libpthread-2.11.1.so  
40050000-40052000 rw-p 00000000 00:00 0  
40052000-40059000 r-xp 00000000 08:01 10044434  
/lib/tls/i686/cmov/librt-2.11.1.so  
40059000-4005a000 r–p 00006000 08:01 10044434  
/lib/tls/i686/cmov/librt-2.11.1.so  
4005a000-4005b000 rw-p 00007000 08:01 10044434  
/lib/tls/i686/cmov/librt-2.11.1.so  
4005b000-4005c000 rw-p 00000000 00:00 0  
4005c000-4005e000 r-xp 00000000 08:01 10044421  
/lib/tls/i686/cmov/libdl-2.11.1.so  
4005e000-4005f000 r–p 00001000 08:01 10044421  
/lib/tls/i686/cmov/libdl-2.11.1.so  
4005f000-40060000 rw-p 00002000 08:01 10044421  
/lib/tls/i686/cmov/libdl-2.11.1.so  
40060000-40069000 r-xp 00000000 08:01 10044420  
/lib/tls/i686/cmov/libcrypt-2.11.1.so  
40069000-4006a000 r–p 00008000 08:01 10044420  
/lib/tls/i686/cmov/libcrypt-2.11.1.so  
4006a000-4006b000 rw-p 00009000 08:01 10044420  
/lib/tls/i686/cmov/libcrypt-2.11.1.so  
4006b000-40092000 rw-p 00000000 00:00 0  
40092000-400b6000 r-xp 00000000 08:01 10044422  
/lib/tls/i686/cmov/libm-2.11.1.so  
400b6000-400b7000 r–p 00023000 08:01 10044422  
/lib/tls/i686/cmov/libm-2.11.1.so  
400b7000-400b8000 rw-p 00024000 08:01 10044422  
/lib/tls/i686/cmov/libm-2.11.1.so  
400b8000-4020b000 r-xp 00000000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020b000-4020c000 —p 00153000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020c000-4020e000 r–p 00153000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020e000-4020f000 rw-p 00155000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020f000-40214000 rw-p 00000000 00:00 0  
40214000-40295000 r–p 00000000 08:01 9767830  
/usr/lib/locale/ja\_JP.utf8/LC\_CTYPE  
40295000-40326000 rw-p 00000000 00:00 0  
4033f000-4035c000 r-xp 00000000 08:01 10045150 /lib/libgcc\_s.so.1  
4035c000-4035d000 r–p 0001c000 08:01 10045150 /lib/libgcc\_s.so.1  
4035d000-4035e000 rw-p 0001d000 08:01 10045150 /lib/libgcc\_s.so.1  
bfc61000-bfc77000 rw-p 00000000 00:00 0 [stack]  
F**_ longjmp causes uninitialized stack frame \*\*\*:  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby terminated  
======= Backtrace: =========  
/lib/tls/i686/cmov/libc.so.6(\_\_fortify\_fail+0x50)[0x4019a350]  
/lib/tls/i686/cmov/libc.so.6(+0xe22ba)[0x4019a2ba]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8168ed4]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8169083]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(rb\_fiber\_resume+0xaf)[0x8169c4f]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x819c74f]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x819d507]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8157b91]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8159f38]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x815d906]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x815f26e]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(rb\_rescue2+0x141)[0x805e1d1]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x814d4c4]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8157b91]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x8159f38]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x815d906]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(rb\_iseq\_eval\_main+0x1c7)[0x815dcd7]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x805e422]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(ruby\_run\_node+0x32)[0x805fc32]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby(main+0x5a)[0x805d65a]  
/lib/tls/i686/cmov/libc.so.6(\_\_libc\_start\_main+0xe6)[0x400cebd6]  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby[0x805d561]  
======= Memory map: ========  
08048000-08212000 r-xp 00000000 fb:00 538613665  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby  
08212000-08213000 r–p 001c9000 fb:00 538613665  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby  
08213000-08214000 rw-p 001ca000 fb:00 538613665  
/home/kazu/tmp/ruby/ruby-trunk/\_build/ruby  
08214000-08221000 rw-p 00000000 00:00 0  
08b7a000-08ca5000 rw-p 00000000 00:00 0 [heap]  
40000000-4001b000 r-xp 00000000 08:01 10043411 /lib/ld-2.11.1.so  
4001b000-4001c000 r–p 0001a000 08:01 10043411 /lib/ld-2.11.1.so  
4001c000-4001d000 rw-p 0001b000 08:01 10043411 /lib/ld-2.11.1.so  
4001d000-4001e000 r-xp 00000000 00:00 0 [vdso]  
4001e000-40020000 rw-p 00000000 00:00 0  
40020000-40027000 r–s 00000000 08:01 1647078  
/usr/lib/gconv/gconv-modules.cache  
40027000-40028000 —p 00000000 00:00 0  
40028000-4002b000 rw-p 00000000 00:00 0  
4002b000-4002d000 r-xp 00000000 fb:00 807287925  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/encdb.so  
4002d000-4002e000 r–p 00001000 fb:00 807287925  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/encdb.so  
4002e000-4002f000 rw-p 00002000 fb:00 807287925  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/encdb.so  
4002f000-40031000 r-xp 00000000 fb:00 269946659  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/trans/transdb.so  
40031000-40032000 r–p 00001000 fb:00 269946659  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/trans/transdb.so  
40032000-40033000 rw-p 00002000 fb:00 269946659  
/home/kazu/tmp/ruby/ruby-trunk/\_build/.ext/i686-linux/enc/trans/transdb.so  
40039000-4004e000 r-xp 00000000 08:01 10044432  
/lib/tls/i686/cmov/libpthread-2.11.1.so  
4004e000-4004f000 r–p 00014000 08:01 10044432  
/lib/tls/i686/cmov/libpthread-2.11.1.so  
4004f000-40050000 rw-p 00015000 08:01 10044432  
/lib/tls/i686/cmov/libpthread-2.11.1.so  
40050000-40052000 rw-p 00000000 00:00 0  
40052000-40059000 r-xp 00000000 08:01 10044434  
/lib/tls/i686/cmov/librt-2.11.1.so  
40059000-4005a000 r–p 00006000 08:01 10044434  
/lib/tls/i686/cmov/librt-2.11.1.so  
4005a000-4005b000 rw-p 00007000 08:01 10044434  
/lib/tls/i686/cmov/librt-2.11.1.so  
4005b000-4005c000 rw-p 00000000 00:00 0  
4005c000-4005e000 r-xp 00000000 08:01 10044421  
/lib/tls/i686/cmov/libdl-2.11.1.so  
4005e000-4005f000 r–p 00001000 08:01 10044421  
/lib/tls/i686/cmov/libdl-2.11.1.so  
4005f000-40060000 rw-p 00002000 08:01 10044421  
/lib/tls/i686/cmov/libdl-2.11.1.so  
40060000-40069000 r-xp 00000000 08:01 10044420  
/lib/tls/i686/cmov/libcrypt-2.11.1.so  
40069000-4006a000 r–p 00008000 08:01 10044420  
/lib/tls/i686/cmov/libcrypt-2.11.1.so  
4006a000-4006b000 rw-p 00009000 08:01 10044420  
/lib/tls/i686/cmov/libcrypt-2.11.1.so  
4006b000-40092000 rw-p 00000000 00:00 0  
40092000-400b6000 r-xp 00000000 08:01 10044422  
/lib/tls/i686/cmov/libm-2.11.1.so  
400b6000-400b7000 r–p 00023000 08:01 10044422  
/lib/tls/i686/cmov/libm-2.11.1.so  
400b7000-400b8000 rw-p 00024000 08:01 10044422  
/lib/tls/i686/cmov/libm-2.11.1.so  
400b8000-4020b000 r-xp 00000000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020b000-4020c000 —p 00153000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020c000-4020e000 r–p 00153000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020e000-4020f000 rw-p 00155000 08:01 10044418  
/lib/tls/i686/cmov/libc-2.11.1.so  
4020f000-40214000 rw-p 00000000 00:00 0  
40214000-40295000 r–p 00000000 08:01 9767830  
/usr/lib/locale/ja\_JP.utf8/LC\_CTYPE  
40295000-40326000 rw-p 00000000 00:00 0  
4033f000-4035c000 r-xp 00000000 08:01 10045150 /lib/libgcc\_s.so.1  
4035c000-4035d000 r–p 0001c000 08:01 10045150 /lib/libgcc\_s.so.1  
4035d000-4035e000 rw-p 0001d000 08:01 10045150 /lib/libgcc\_s.so.1  
bff00000-bff16000 rw-p 00000000 00:00 0 [stack]  
F…  
#915 test\_thread.rb:307:in `<top (required)>': g = "abc".enum_for(:scan, /./) loop { g.next } #=> killed by SIGABRT (signal 6) [ruby-dev:34128] #916 test_thread.rb:312:in `\<top (required)\>':  
g = Module.enum\_for(:new)  
loop { g.next }  
#=\> killed by SIGABRT (signal 6) [ruby-dev:34128]  
FAIL 2/931 tests failed  
make: \*\*\* [yes-btest-ruby] e$B%(%i!\<e(B 1  
%

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 18, 2010, 6:01pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/2 "2010-05-18T18:01:03Z")

</div>

e$B%A%1%C%He(B #3295 e$B$,99?7$5$l$^$7$?!#e(B (by Yusuke E.)

e$B4|8BF|e(B 2010e$BG/e(B05e$B7ne(B31e$BF|$K%;%C%He(B  
e$BC4Ev\<Te(B Koichi Sasadae$B$K%;%C%He(B

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

Fiber e$B$N9bB.2=$N$;$$$N$h$&$G$9!#0J2\<$N%Q%C%A$G8=\>]$,\>C$($^$9!#e(B  
e$BAa5^$KD\>$7$F$/$@$5$$!#$G$-$J$1$l$Pe(B 1.9.2 e$B$O8+Aw$j$H$7$^$9!#e(B  
release plan e$B$K4p$E$-!"4|8B$Oe(B 5 e$B7nKv$G$9!#e(B

diff --git a/cont.c b/cont.c  
index c0c3619…8ca47be 100644  
— a/cont.c  
+++ b/cont.c  
@@ -35,6 +35,8 @@  
\*/

#endif  
+#undef FIBER\_USE\_NATIVE

#ifdef FIBER\_USE\_NATIVE  
#ifndef \_WIN32

## – Yusuke E. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

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

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 19, 2010, 3:34am UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/3 "2010-05-19T03:34:21Z")

</div>

kosakie$B$G$9e(B

> e$B1sF#$G$9!#e(B
> 
> Fiber e$B$N9bB.2=$N$;$$$N$h$&$G$9!#0J2\<$N%Q%C%A$G8=\>]$,\>C$($^$9!#e(B  
> e$BAa5^$KD\>$7$F$/$@$5$$!#$G$-$J$1$l$Pe(B 1.9.2 e$B$O8+Aw$j$H$7$^$9!#e(B  
> release plan e$B$K4p$E$-!"4|8B$Oe(B 5 e$B7nKv$G$9!#e(B

e$B8=\>]e(B: make test e$BIT2DG=e(B  
e$B860x!'e(B e$B9bB.2=L\E\*%Q%C%Ae(B

e$B$J$N$G!"!V:#!We(Breverte$B$7$Fe(B1.9.3e$BAw$j$rDs0F$7$^$9!#e(B5/Ee$B$.$j$.$j$Ke(B  
make  
teste$B=PMh$k$h$&$K$J$C$?$H$7$F!“1#$l$F$$$?JL$N%P%0$,I=$K=P$F$/$ke(B  
e$B2DG=@-$,$”$j$^$9$h$M!)e(B  
e$B%j%j!\<%9%(%s%8%K%"%j%s%0E\*$K$O9bB.2=%Q%C%A$K$ONdC8$K$"$k$Y$-$H;W$$$^$9!#e(B  
e$B:n$k$N$O$H$F$bBgJQ$J$N$G:n\<T$Oe(Brespecte$B$5$l$k$Y$-$G$9$,!#e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 21, 2010, 8:45pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/4 "2010-05-21T20:45:29Z")

</div>

e$B\>.:j$G$9e(B  
e$B$3$s$K$A$Oe(B

> e$B:#2s!“e(BUbuntu-10.0.4 e$B4D6-$Ge(B Fiber e$B$,860x$Ge(B Abort e$B$9$k$N$Oe(B Ubuntu-10.0.4e$B$Ge(B  
> e$B$O!”:GE,2=%\*%W%7%g%s$re(B O3 e$B$H$7$?$H$-$Ke(B \_\_longjmp\_chk e$B$H$$$&4X?t$r;HMQ$9e(B  
> e$B$k$?$a$N$h$&$G$9!#e(B  
> e$B!Je(BO0 e$B$N$H$-$Oe(B \_longjmp e$B$,;HMQ$5$l$k$h$&$G$9!#$=$N$?$a!"e(Bcont.c e$B$re(B O0 e$B$G%3e(B  
> e$B%s%Q%$%k$9$k$H!"e(Bmake test e$B$KDL$j$^$9!#!Ke(B

e$B7Z$/D4$Y$?$H$3$m!"e(BUbuntue$B$Ne(Bgcce$B$G$O%G%U%)%k%H$Ge(B-D\_FORTIFY\_SOURCE=2  
e$B$5$l$F$$$k$?$a$N$h$&$G$9!#e(B  
e$B\<j85$Ke(BUbuntue$B$,$J$$$N$G$9$,!"e(Bcont.c  
e$B$@$1%3%s%Q%$%k%\*%W%7%g%s$rJQ99$9$k$3$H$Ge(B  
e$B2sHr$G$-$^$;$s$G$7$g$&$+!)e(B

> e$B$=$N$?$a!“e(Breverte$B$7$Fe(B Fiber e$B$N%Q%C%A$re(B 1.9.3e$BAw$j$K$9$k$H$$$&Ds0F$K!”;d$be(B  
> e$B;?@.$7$^$9!#e(B  
> Fiber e$B$N%Q%C%A$r!“e(Btrunk e$B$K$F%F%9%H$5$;$F$$$?$@$-$?$$$G$9!#e(B  
> e$B$48!F$!”$h$m$7$/$\*4j$$$7$^$9!#e(B

e$B$$$?$@$$$?%Q%C%A$O$3$A$i$Ge(Btrunke$B$KF~$l$F$_$/$N$G!"%3%s%Q%$%k%_%W%7%g%s$Ge(B  
e$BF($2$k;v$,=PMh$=$&$J$i!":FEY\>e=q$-$7$F$/$@$5$$$^$;e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 21, 2010, 7:15pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/5 "2010-05-21T19:15:54Z")

</div>

e$B\<G$H?=$7$^$9!#e(B

Fiber e$B$N%Q%C%A$N\<BAu$r\<g$K9T$C$?\<T$G$9!#e(B

> kosakie$B$G$9e(B
> 
> e$B8=\>]e(B: make test e$BIT2DG=e(B  
> e$B860x!'e(B e$B9bB.2=L\E\*%Q%C%Ae(B
> 
> e$B$J$N$G!"!V:#!We(Breverte$B$7$Fe(B1.9.3e$BAw$j$rDs0F$7$^$9!#e(B5/Ee$B$.$j$.$j$Ke(B  
> make teste$B=PMh$k$h$&$K$J$C$?$H$7$F!“1#$l$F$$$?JL$N%P%0$,I=$K=P$F$/$ke(B  
> e$B2DG=@-$,$”$j$^$9$h$M!)e(B

e$B:#2s!“e(BUbuntu-10.0.4 e$B4D6-$Ge(B Fiber e$B$,860x$Ge(B Abort  
e$B$9$k$N$Oe(B Ubuntu-10.0.4e$B$Ge(B  
e$B$O!”:GE,2=%\*%W%7%g%s$re(B O3 e$B$H$7$?$H$-$Ke(B \_\_longjmp\_chk  
e$B$H$$$&4X?t$r;HMQ$9e(B  
e$B$k$?$a$N$h$&$G$9!#e(B  
e$B!Je(BO0 e$B$N$H$-$Oe(B \_longjmp  
e$B$,;HMQ$5$l$k$h$&$G$9!#$=$N$?$a!"e(Bcont.c e$B$re(B O0 e$B$G%3e(B  
e$B%s%Q%$%k$9$k$H!"e(Bmake test e$B$KDL$j$^$9!#!Ke(B

\_\_longjmp\_chk e$B$O!"0J2\<$N$h$&$J=hM}$r9T$$$^$9!#e(B

void \_\_longjmp\_chk(jmp\_buf env, int val)  
{  
if  
(e$B%8%c%s%W@h$N%9%?%C%/$,!“8=:\_$N%9%?%C%/$KBP$7$F%9%?%C%/$N?-$S$F$$e(B  
e$B$/J}8~$K$”$ke(B) {  
stack\_t oss;  
sigaltstack(NULL, &oss);  
if (oss.ss\_flags != SS\_ONSTACK) {  
/\* e$B8=:\_F0:nCf$N%9%?%C%/$,%7%0%J%k%9%?%C%/$H$7$Fe(B _/  
/_ e$B@k8@$5$l$F$$$k$b$N$G$O$J$+$C$?$i!"%(%i!\<e(B \*/  
abort(“longjmp causes uninitialized stack frame”);  
}  
}  
e$B=\>Mh$Ne(B longjmp  
}

e$B$D$^$j!“e(B\_\_longjmp\_chk  
e$B;~$K%8%c%s%W@h$N%9%?%C%/$,8=:\_$N%9%?%C%/$KBP$7$F%9e(B  
e$B%?%C%/$N?-$S$F$$$/J}8~$K$”$k\>l9g$O!"8=:\_F0$$$F$$$k%9%?%C%/$,e(B  
sigaltstack  
e$B$K$h$C$F@_Dj$5$l$?%7%0%J%k%9%?%C%/$G$J$$8B$j!"%(%i!\<$H$_$J$5$l$k$H$$$&$3e(B  
e$B$H$G$9!#e(B  
e$B$=$N$?$a!“e(Bset/longjmp  
e$B$G%9%?%C%/$r@Z$jBX$($k!”:#LdBj$H$J$C$F$$$ke(B Fibere$B$Ne(B  
e$B\<BAu$G$Oe(B Ubuntu-10.0.4 e$B$N4D6-$@$He(B abort  
e$B$7$F$7$^$$$^$9!#e(B  
set/longjmp e$B$G$O$J$/!"e(Bswapcontext  
e$B$r;HMQ$9$k\<BAu$KD\>$7$?$H$3$m!"e(Bmake-  
test e$B$KDL$j$^$7$?!JK%a!\<%k$NKvHx$K%Q%C%A$rD%$j$^$9!K!#e(B

e$B0J\>e$N$h$&$K!":#2se(B make test e$B$Ge(B Fiber e$B$,860x$Ge(B abort  
e$B$9$k$N$O!“e(BFiber e$B$Ne(B  
e$B\<BAu$K%P%0$,$”$k$H$$$&$h$j$b!";HMQ$9$k%i%$%V%i%j$N;EMM$,JQ$o$C$F$7$^$C$?e(B  
e$B$3$H$,860x$@$H;W$$$^$9!#e(B

e$B$7$+$7!“e(BFiber e$B$N%Q%C%A$,e(B trunk  
e$B$K\<h$j9~$^$l$?$N$,:G6a$G$”$j!"$^$@%F%9%He(B  
e$B$,==J,$G$"$k$H$O$$$($J$$$?$a!"\>.:j$5$s$N$_$C$7$c$k$H$_$j!“1#$l$F$$$k%P%0e(B  
e$B$,@x$s$G$$$k2DG=@-$O==J,$K$”$k$H;W$$$^$9!#e(B

e$B$=$N$?$a!“e(Breverte$B$7$Fe(B Fiber e$B$N%Q%C%A$re(B  
1.9.3e$BAw$j$K$9$k$H$$$&Ds0F$K!”;d$be(B  
e$B;?@.$7$^$9!#e(B  
Fiber e$B$N%Q%C%A$r!“e(Btrunk e$B$K$F%F%9%H$5$;$F$$$?$@$-$?$$$G$9!#e(B  
e$B$48!F$!”$h$m$7$/$\*4j$$$7$^$9!#e(B

# Index: cont.c

— cont.c (revision 27947)  
+++ cont.c (working copy)  
@@ -621,16 +621,7 @@ fiber\_setcontext(rb\_fiber\_t \*newfib, rb\_  
#ifdef \_WIN32  
SwitchToFiber(newfib-\>fib\_handle);  
#else

- if (!ruby\_setjmp(oldfib-\>cont.jmpbuf)) {
- if (newfib-\>status != RUNNING) {
- 

```
 if (setcontext(&newfib->context) < 0) {

```

- rb\_bug(“context switch between fiber failed”);
- 

```
 }

```

- }
- else {
- 

```
 ruby_longjmp(newfib->cont.jmpbuf, 1);

```

- }
- }

- swapcontext(&oldfib-\>context, &newfib-\>context);  
#endif  
}  
#endif

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 21, 2010, 11:32pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/6 "2010-05-21T23:32:22Z")

</div>

e$B!!$5$5$@$G$9!%e(B

(2010/05/22 3:45), KOSAKI Motohiro wrote::

> e$B$$$?$@$$$?%Q%C%A$O$3$A$i$Ge(Btrunke$B$KF~$l$F$_$/$N$G!"%3%s%Q%$%k%_%W%7%g%s$Ge(B  
> e$BF($2$k;v$,=PMh$=$&$J$i!":FEY\>e=q$-$7$F$/$@$5$$$^$;e(B

e$B!!$($($H!$e(Bswapcontext() e$B;H$&$H!$7k6IB.$/$J$i$J$$$N$G!Je(Bsignal  
mask e$B$N@\_Dje(B  
e$B$G%7%9%F%`%3!\<%kH/9T$9$k$N$GCY$$!K!$$3$N%Q%C%A$r$=$N$^$^F~$l$k$N$OH?BP$Ge(B  
e$B$9!%e(Bconfigure e$B$H$+e(B Makefile  
e$B$H$+$G$J$s$H$+$9$k$Y$-$+$J$!!$$H$\*$b$$$^$9!%e(B

e$B!!\<G7/$N\<gD%$O!$e(Bswapcontext() e$B2=%Q%C%A$re(B trunk  
e$B$K\<h$j9~$s$G$/$l!$$8$c$Je(B  
e$B$/$F!$e(BFiber e$B$N9bB.2=\<+BN$re(B trunk  
e$B$G$b$&\>/$7;n$5$;$F$/$l!$$C$F$3$H$J$se(B  
e$B$8$c$J$$$+$H!%e(B

e$B!!$A$J$\_$K!$e(B1.9.2 e$B$Ge(B Fiber  
e$B$N9bB.2=$rL58z$K$9$k$N$O;?@.$G$9$,!$$I$&$d$Ce(B  
e$B$FL58z2=$7$^$7$g$&!%$H$$$&$N$b!$e(B

(1) revert e$B$9$ke(B  
(2) FIBER\_USE\_NATIVE e$B$re(B 0 e$B$K$7$H$/e(B

e$B$Ne(B2e$B\<oN`$,9M$($i$l$^$9!%e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 21, 2010, 11:49pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/7 "2010-05-21T23:49:55Z")

</div>

e$B\>.:j$G$9e(B

> e$B\<G7/$N\<gD%$O!$e(Bswapcontext() e$B2=%Q%C%A$re(B trunk e$B$K\<h$j9~$s$G$/$l!$$8$c$Je(B  
> e$B$/$F!$e(BFiber e$B$N9bB.2=\<+BN$re(B trunk e$B$G$b$&\>/$7;n$5$;$F$/$l!$$C$F$3$H$J$se(B  
> e$B$8$c$J$$$+$H!%e(B

e$B$7$^$C$?!#$b$&F~$l$A$c$C$?!#$4$a$s$J$5$$!#e(B  
e$B\<B$ON"$N0U?^$,$"$C$F!"e(Bmake  
teste$B$,DL$i$J$$$N$O$1$7$+$i$s$+$i0l;~E\*$Ke(B  
e$BL58z2=$7$h$&$H$$$&9bEY$K@/\<#E\*$JH=CG$,$5$l$?$N$@!#$H$+8mFI$7$F$/$@$5$$!#e(B  
e$B$\<$R!#e(B

e$BKM$be(Bswapcontext()e$B$GF($2$k$N$O6Z0-$@$H;W$&$N$G!"e(BMakefilee$B$G$J$s$H$+e(B  
e$B$J$C$FM\_$7$$$G$9!#e(B

> e$B$A$J$\_$K!$e(B1.9.2 e$B$Ge(B Fiber e$B$N9bB.2=$rL58z$K$9$k$N$O;?@.$G$9$,!$$I$&$d$Ce(B  
> e$B$FL58z2=$7$^$7$g$&!%$H$$$&$N$b!$e(B
> 
> (1) revert e$B$9$ke(B  
> (2) FIBER\_USE\_NATIVE e$B$re(B 0 e$B$K$7$H$/e(B
> 
> e$B$Ne(B2e$B\<oN`$,9M$($i$l$^$9!%e(B

e$BKNIt$5$s$Ke(B(1)e$B$,$h$$$H$$$&0U8+$r$b$i$C$?$N$G!"$=$&$$$&%Q%C%A$r%3%\_%C%H$7$H$-$^$9!#e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [May 21, 2010, 8:57pm UTC](https://www.ruby-forum.com/t/bug-3295-make-test-aborted/188596/8 "2010-05-21T20:57:46Z")

</div>

e$B%A%1%C%He(B #3295 e$B$,99?7$5$l$^$7$?!#e(B (by Motohiro KOSAKI)

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

This issue was solved with changeset r27949.  
Kazuhiro, thank you for reporting this issue.  
Your contribution to Ruby is greatly appreciated.  
May Ruby be with you.

* * *

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