From: nobu.nakada@... Date: 2003-12-09T00:01:44+09:00 Subject: [ruby-list:38875] Re: 拡張ライブラリにて、例外の再発生 なかだです。 At Mon, 8 Dec 2003 23:42:17 +0900, Masahiro Kawata wrote: > $!はCではruby_errinfoだと思い、以下のような感じでやってみました。 > > rb_protect( method, v, &state); > if( state){ > ...後処理 > rb_raise( ruby_errinfo, RSTRING( rb_obj_as_string( > ruby_errinfo))->ptr); > } rb_protect()で捕まえた例外は、rb_jump_tag()で再発生できます。 > とすると、SIGSEGVが発生してしまいました。 > 過去ログでは、ruby_errinfoは「参照」はしても良いという事でしたが、 > このような用途には使ってはいけないものなのでしょうか? rb_raise()の第一引数にはExceptionインスタンスではなくて Exceptionクラスが必要です。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦