static SCM gdbscm_symbol_symtab (SCM self) { symbol_smob *s_smob = syscm_get_valid_symbol_smob_arg_unsafe (self, SCM_ARG1, FUNC_NAME); const struct symbol *symbol = s_smob->symbol; return stscm_scm_from_symtab (SYMBOL_SYMTAB (symbol)); }
static SCM gdbscm_symbol_symtab (SCM self) { symbol_smob *s_smob = syscm_get_valid_symbol_smob_arg_unsafe (self, SCM_ARG1, FUNC_NAME); const struct symbol *symbol = s_smob->symbol; if (!SYMBOL_OBJFILE_OWNED (symbol)) return SCM_BOOL_F; return stscm_scm_from_symtab (symbol_symtab (symbol)); }
SCM stscm_scm_from_sal (struct symtab_and_line sal) { SCM st_scm, s_scm; sal_smob *s_smob; st_scm = SCM_BOOL_F; if (sal.symtab != NULL) st_scm = stscm_scm_from_symtab (sal.symtab); s_scm = stscm_make_sal_smob (); s_smob = (sal_smob *) SCM_SMOB_DATA (s_scm); s_smob->symtab_scm = st_scm; s_smob->sal = sal; return s_scm; }