Mercurial > emacs
changeset 39767:00f499d0cd16
(Qcircular_list): New variable.
(circular_list_error): New function.
(syms_of_data): Initialize it Qcircular_list.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Thu, 11 Oct 2001 09:03:51 +0000 |
parents | 2a0aa5b942d7 |
children | e2bfb4d00b04 |
files | src/data.c |
diffstat | 1 files changed, 17 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/data.c Thu Oct 11 08:46:50 2001 +0000 +++ b/src/data.c Thu Oct 11 09:03:51 2001 +0000 @@ -65,7 +65,7 @@ Lisp_Object Qerror_conditions, Qerror_message, Qtop_level; Lisp_Object Qerror, Qquit, Qwrong_type_argument, Qargs_out_of_range; Lisp_Object Qvoid_variable, Qvoid_function, Qcyclic_function_indirection; -Lisp_Object Qcyclic_variable_indirection; +Lisp_Object Qcyclic_variable_indirection, Qcircular_list; Lisp_Object Qsetting_constant, Qinvalid_read_syntax; Lisp_Object Qinvalid_function, Qwrong_number_of_arguments, Qno_catch; Lisp_Object Qend_of_file, Qarith_error, Qmark_inactive; @@ -98,6 +98,15 @@ int most_positive_fixnum, most_negative_fixnum; + +void +circular_list_error (list) + Lisp_Object list; +{ + Fsignal (Qcircular_list, list); +} + + Lisp_Object wrong_type_argument (predicate, value) register Lisp_Object predicate, value; @@ -2881,6 +2890,13 @@ Fput (Qcyclic_variable_indirection, Qerror_message, build_string ("Symbol's chain of variable indirections contains a loop")); + Qcircular_list = intern ("circular-list"); + staticpro (&Qcircular_list); + Fput (Qcircular_list, Qerror_conditions, + Fcons (Qcircular_list, error_tail)); + Fput (Qcircular_list, Qerror_message, + build_string ("List contains a loop")); + Fput (Qvoid_variable, Qerror_conditions, Fcons (Qvoid_variable, error_tail)); Fput (Qvoid_variable, Qerror_message,