static size_t frscm_free_frame_smob (SCM self) { frame_smob *f_smob = (frame_smob *) SCM_SMOB_DATA (self); if (f_smob->inferior != NULL) { htab_t htab = frscm_inferior_frame_map (f_smob->inferior); gdbscm_clear_eqable_gsmob_ptr_slot (htab, &f_smob->base); } /* Not necessary, done to catch bugs. */ f_smob->inferior = NULL; return 0; }
static size_t syscm_free_symbol_smob (SCM self) { symbol_smob *s_smob = (symbol_smob *) SCM_SMOB_DATA (self); if (s_smob->symbol != NULL) { htab_t htab = syscm_objfile_symbol_map (s_smob->symbol); gdbscm_clear_eqable_gsmob_ptr_slot (htab, &s_smob->base); } /* Not necessary, done to catch bugs. */ s_smob->symbol = NULL; return 0; }