mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-18 01:30:27 +02:00
* filesys.c (scsm_sys_stat): don't SIGSEGV if argument is an
integer (assuming for now accepting an integer is a good thing). * error.c, fports.c: replace use of %S in lgh_error args with %s. %S will be used instead for write'ing arguments. * unif.c (scm_transpose_array): change arguments in the SCM_WNA asserts. fix a few other asserts. (scm_aind, scm_enclose_array, scm_array_in_bounds_p, scm_uniform_vector_ref, scm_array_set_x, scm_dimensions_to_unform_array): change args in SCM_WNA SCM_ASSERTS and change scm_wta's to scm_wrong_num_args. strop.c (scm_substring_move_left_x, scm_substring_move_right_x, scm_substring_fill_x): likewise. gsubr.c (scm_gsubr_apply): likewise. eval.c (SCM_APPLY): likewise. * eval.c (4 places): replace scm_everr with lgh_error or scm_wrong_num_args. * error.c, error.h (scm_wrong_num_args, scm_wrong_type_arg, scm_memory_error): new procedures. * scm_everr: deleted. can use scm_wta, dropping first two args. scm_error: convert NULL subr to SCM_BOOL_F. * __scm.h: don't define SCM_STACK_OVFLOW, SCM_EXIT, SCM_ARG6, SCM_ARG7, SCM_ARGERR. * stackchk.c (scm_report_stack_overflow): use lgh_error instead of scm_wta. * error.c, error.h: new error keys: scm_arg_type_key, scm_args_number_key, scm_memory_alloc_key, scm_stack_overflow_key, scm_misc_error_key. scm_wta: reimplement using lgh_error instead of scm_everr.
This commit is contained in:
parent
2194b6f00e
commit
f5bf2977c6
11 changed files with 241 additions and 149 deletions
|
@ -51,9 +51,16 @@ extern int scm_ints_disabled;
|
|||
extern SCM scm_system_error_key;
|
||||
extern SCM scm_num_overflow_key;
|
||||
extern SCM scm_out_of_range_key;
|
||||
extern SCM scm_arg_type_key;
|
||||
extern SCM scm_args_number_key;
|
||||
extern SCM scm_memory_alloc_key;
|
||||
extern SCM scm_stack_overflow_key;
|
||||
extern SCM scm_misc_error_key;
|
||||
|
||||
|
||||
|
||||
extern SCM scm_errno SCM_P ((SCM arg));
|
||||
extern SCM scm_perror SCM_P ((SCM arg));
|
||||
extern void scm_error SCM_P ((SCM key, char *subr, char *message,
|
||||
SCM args, SCM rest));
|
||||
extern void (*scm_error_callback) SCM_P ((SCM key, char *subr,
|
||||
|
@ -63,27 +70,10 @@ extern void scm_syserror_msg SCM_P ((char *subr, char *message, SCM args));
|
|||
extern void scm_sysmissing SCM_P ((char *subr));
|
||||
extern void scm_num_overflow SCM_P ((char *subr));
|
||||
extern void scm_out_of_range SCM_P ((char *subr, SCM bad_value));
|
||||
|
||||
#ifdef __STDC__
|
||||
extern int scm_handle_it (int i);
|
||||
extern void scm_warn (char *str1, char *str2);
|
||||
extern SCM scm_errno (SCM arg);
|
||||
extern SCM scm_perror (SCM arg);
|
||||
extern void scm_def_err_response (void);
|
||||
extern void scm_everr (SCM exp, SCM env, SCM arg, char *pos, char *s_subr);
|
||||
extern SCM scm_wta (SCM arg, char *pos, char *s_subr);
|
||||
extern void scm_init_error (void);
|
||||
|
||||
#else /* STDC */
|
||||
extern int scm_handle_it ();
|
||||
extern void scm_warn ();
|
||||
extern SCM scm_errno ();
|
||||
extern SCM scm_perror ();
|
||||
extern void scm_def_err_response ();
|
||||
extern void scm_everr ();
|
||||
extern SCM scm_wta ();
|
||||
extern void scm_init_error ();
|
||||
|
||||
#endif /* STDC */
|
||||
extern void scm_wrong_num_args SCM_P ((SCM proc));
|
||||
extern void scm_wrong_type_arg SCM_P ((char *subr, int pos, SCM bad_value));
|
||||
extern void scm_memory_error SCM_P ((char *subr));
|
||||
extern SCM scm_wta SCM_P ((SCM arg, char *pos, char *s_subr));
|
||||
extern void scm_init_error SCM_P ((void));
|
||||
|
||||
#endif /* ERRORH */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue