DECLARE_SIMPLE_SMOBS;
static SCM make_scm (void initdata) {
Ssmob * sp = new Ssmob (initdata);
- return sp->smobbed_self();
+ return sp->smobbed_self ();
}
private:
Ssmob (initdata);
class Csmob {
DECLARE_SMOBS;
- Csmob () { smobify_self(); }
+ Csmob () { smobify_self (); }
Csmob (Csmob const & s) {
// don't copy self_scm_
smobify_self ();
class Bla {
Csmob *ptr;
- ~Bla () { scm_unprotect_object (ptr->self_scm_); }
+ ~Bla () { scm_gc_unprotect_object (ptr->self_scm_); }
};
WARNING:
- smobify_self() might trigger a GC, so make sure that objects are
- sane when you do smobify_self().
+ smobify_self () might trigger a GC, so make sure that objects are
+ sane when you do smobify_self ().
*/
#define DECLARE_SIMPLE_SMOBS(CL,dummy) \
friend class Non_existant_class ; \
SCM smobbed_self () const; \
private:\
- static long smob_tag_; \
+ static scm_t_bits smob_tag_; \
static SCM mark_smob (SCM); \
- static scm_sizet free_smob (SCM s); \
+ static size_t free_smob (SCM s); \
static int print_smob (SCM s, SCM p, scm_print_state*); \
public: \
static SCM equal_p (SCM a, SCM b);\
static CL * unsmob (SCM);\
static SCM smob_p (SCM);\
- static void init_smobs(); \
+ static void init_smobs (); \
private:
#define DECLARE_SMOBS(CL,dummy) \
- DECLARE_SIMPLE_SMOBS(CL,dammy) \
+ DECLARE_SIMPLE_SMOBS (CL,dammy) \
protected:\
- virtual ~CL();\
+ virtual ~CL ();\
SCM unprotected_smobify_self ();\
private: \
SCM smobify_self (); \