On Thu, 31 Aug 2000, Yasushi Shoji wrote:

> I asked Matz the same question.  his answer was:
> 
> 1.4 doesn't have an easy-to-use c API for 'super'.  but in Ruby
> Extention, method usually doesn't change dynamically so that you can
> call the method you want directly.
> 
> however, my stupidity made me ask him again to put rb_call_super() in
> 1.5 branch. seems current CVS still contain the function in eval.c
> 
> BTW, you need to call rb_enable_super() to enable rb_call_super().
> see eval.c
> 
Ok, thanks to all for claryfying this.

For completeness I include the wordaround I've used so far:

In Init_MyClass:

rb_define_alias( cMyClass, "super_my_method", "my_method" );
rb_define_method( cMyClass, "my_method", ext_my_method, ...);

and then in ext_my_method:

rb_funcall( self, rb_intern("super_my_method"), ... );

Regards,

Robert