On Sat, Sep 29, 2007 at 03:39:05AM +0900, Nobuyoshi Nakada wrote: > > VALUE rb_cFoo = rb_define_class("Foo", rb_cObject); > > rb_undef_alloc_func(rb_cFoo); > > It makes impossible to create any instances at all. > > rb_undef_method(rb_singleton_class(rb_cFoo), "new"); Instances can still be created with Data_Wrap_Struct. But maybe that's not what the OP intended. I saw the word "extension" and made an assumption. Paul