[#9445] thread.rb — m_seki@...

18 messages 2000/03/16
[#9446] Re: thread.rb — matz@... (Yukihiro Matsumoto) 2000/03/17

[#9460] Re: thread.rb — m_seki@... 2000/03/21

[#9462] Re: thread.rb — matz@... (Yukihiro Matsumoto) 2000/03/21

まつもと ゆきひろです

[#11281] Re: thread.rb — Masatoshi SEKI <m_seki@...> 2000/10/22

[#9498] timeout しない timeout — ARIMA Yasuhiro <fit0298@...>

有馬です。

20 messages 2000/03/26
[#9506] Re: timeout しない timeout — matz@... (Yukihiro Matsumoto) 2000/03/27

まつもと ゆきひろです

[#9509] Re: timeout しない timeout — gotoken@... (GOTO Kentaro) 2000/03/27

In message "[ruby-dev:9506] Re: timeout しない timeout"

[ruby-dev:9388] Re: rb_call_super()

From: Kazuhiro HIWADA <hiwada@...>
Date: 2000-03-07 04:57:46 UTC
List: ruby-dev #9388
ひわだです。

全然答えにはなってないんですが…。

From: Yasushi Shoji <yashi@yashi.com>
Subject: [ruby-dev:9383] rb_call_super()
Date: Mon, 6 Mar 2000 22:00:59 +0900

> やすしです。

> 1.4.3に rb_call_super()を切り貼りして試しているのですが‥。

> eval.cで
> 
> >    if (ruby_frame->last_class == 0) {	
> >	rb_raise(rb_eNameError, "superclass method `%s' disabled",
> >		 rb_id2name(ruby_frame->last_func));
> 
> と、なっているので、ruby_frame->last_classが 0なんでしょうけど、ruby
> internalをまるでわかってないので‥‥‥。

rb_define_method ではメソッドに NOEX_CFUNC なる属性がつくんですが、こ
れは現在 NOEX_UNDEF と等価に設定されていまして…、というのが原因かと。

僕は C レベルからは super は呼ばれないから NOEX_CFUNC は NOEX_UNDEF に
してあると単純に思ってるんですが(…浅はか?)。

#他に理由がないようなら #define NOEX_CFUNC 0 か(…甘いかも)
--
檜田和浩 <hiwada@kuee.kyoto-u.ac.jp>

In This Thread