1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-15 16:20:17 +02:00

* srcprop.[ch] (scm_c_source_property_breakpoint_p): New

function, replaces macro SRCBRKP.

(SRCBRKP):  Deprecated.

* eval.c (SCM_CEVAL): Replaced use of SRCBRKP by call to
scm_c_source_property_breakpoint_p.  Removed some use of arg1 as
temporary variable.
This commit is contained in:
Dirk Herrmann 2002-03-26 00:19:04 +00:00
parent 5132eef0cf
commit bc76d62865
5 changed files with 35 additions and 10 deletions

4
NEWS
View file

@ -110,6 +110,10 @@ the user of SCM_NEWCELL and SCM_NEWCELL2 could make this safe and efficient.
Use the variables scm_check_entry_p, scm_check_apply_p and scm_check_exit_p
instead.
** SRCBRKP has been deprecated.
Use scm_c_source_property_breakpoint_p instead.
** Removed definitions: scm_lisp_nil, scm_lisp_t, s_nil_ify, scm_m_nil_ify,
s_t_ify, scm_m_t_ify, s_0_cond, scm_m_0_cond, s_0_ify, scm_m_0_ify, s_1_ify,
scm_m_1_ify, scm_debug_newcell, scm_debug_newcell2, scm_tc16_allocated,

View file

@ -1,3 +1,14 @@
2002-03-26 Dirk Herrmann <D.Herrmann@tu-bs.de>
* srcprop.[ch] (scm_c_source_property_breakpoint_p): New
function, replaces macro SRCBRKP.
(SRCBRKP): Deprecated.
* eval.c (SCM_CEVAL): Replaced use of SRCBRKP by call to
scm_c_source_property_breakpoint_p. Removed some use of arg1 as
temporary variable.
2002-03-25 Dirk Herrmann <D.Herrmann@tu-bs.de>
* debug.h, eval.c: Deprecated CHECK_ENTRY, CHECK_APPLY and

View file

@ -1939,19 +1939,21 @@ start:
debug.info->e.env = env;
if (scm_check_entry_p && SCM_TRAPS_P)
{
if (SCM_ENTER_FRAME_P || (SCM_BREAKPOINTS_P && SRCBRKP (x)))
if (SCM_ENTER_FRAME_P
|| (SCM_BREAKPOINTS_P && scm_c_source_property_breakpoint_p (x)))
{
SCM stackrep;
SCM tail = SCM_BOOL (SCM_TAILRECP (debug));
SCM_SET_TAILREC (debug);
if (SCM_CHEAPTRAPS_P)
arg1 = scm_make_debugobj (&debug);
stackrep = scm_make_debugobj (&debug);
else
{
int first;
SCM val = scm_make_continuation (&first);
if (first)
arg1 = val;
stackrep = val;
else
{
x = val;
@ -1966,7 +1968,7 @@ start:
SCM_TRAPS_P = 0;
scm_call_4 (SCM_ENTER_FRAME_HDLR,
scm_sym_enter_frame,
arg1,
stackrep,
tail,
scm_unmemocopy (x, env));
SCM_TRAPS_P = 1;

View file

@ -117,6 +117,14 @@ srcprops_print (SCM obj, SCM port, scm_print_state *pstate)
}
int
scm_c_source_property_breakpoint_p (SCM form)
{
SCM obj = scm_whash_lookup (scm_source_whash, form);
return SRCPROPSP (obj) && SRCPROPBRK (obj);
}
SCM
scm_make_srcprops (long line, int col, SCM filename, SCM copy, SCM plist)
{

View file

@ -115,10 +115,6 @@ typedef struct scm_t_srcprops_chunk
#define SETSRCPROPLINE(p,l) SETSRCPROPPOS (p, l, SRCPROPCOL (p))
#define SETSRCPROPCOL(p,c) SETSRCPROPPOS (p, SRCPROPLINE (p), c)
#define SRCBRKP(x) (!SCM_IMP (arg1 = scm_whash_lookup (scm_source_whash, (x)))\
&& SRCPROPSP (arg1)\
&& SRCPROPBRK (arg1))
#define PROCTRACEP(x) (!SCM_FALSEP (scm_procedure_property (x, scm_sym_trace)))
SCM_API SCM scm_sym_filename;
@ -129,7 +125,7 @@ SCM_API SCM scm_sym_breakpoint;
SCM_API int scm_c_source_property_breakpoint_p (SCM form);
SCM_API SCM scm_srcprops_to_plist (SCM obj);
SCM_API SCM scm_make_srcprops (long line, int col, SCM fname, SCM copy, SCM plist);
SCM_API SCM scm_source_property (SCM obj, SCM key);
@ -139,6 +135,10 @@ SCM_API SCM scm_set_source_properties_x (SCM obj, SCM props);
SCM_API void scm_finish_srcprop (void);
SCM_API void scm_init_srcprop (void);
#if SCM_ENABLE_DEPRECATED == 1
#define SRCBRKP(x) (scm_source_property_breakpoint_p (x))
#endif
#endif /* SCM_SRCPROP_H */
/*