comparison src/eval.c @ 4985:358aa3bb603f

Automatic merge
author Ben Wing <ben@xemacs.org>
date Fri, 05 Feb 2010 12:12:28 -0600
parents 3c3c1d139863
children ae48681c47fa
comparison
equal deleted inserted replaced
4984:f23cd0184dcf 4985:358aa3bb603f
1 /* Evaluator for XEmacs Lisp interpreter. 1 /* Evaluator for XEmacs Lisp interpreter.
2 Copyright (C) 1985-1987, 1992-1994 Free Software Foundation, Inc. 2 Copyright (C) 1985-1987, 1992-1994 Free Software Foundation, Inc.
3 Copyright (C) 1995 Sun Microsystems, Inc. 3 Copyright (C) 1995 Sun Microsystems, Inc.
4 Copyright (C) 2000, 2001, 2002, 2003, 2004 Ben Wing. 4 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2010 Ben Wing.
5 5
6 This file is part of XEmacs. 6 This file is part of XEmacs.
7 7
8 XEmacs is free software; you can redistribute it and/or modify it 8 XEmacs is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published by the 9 under the terms of the GNU General Public License as published by the
2608 else if (ERRB_EQ (errb, ERROR_ME_DEBUG_WARN)) 2608 else if (ERRB_EQ (errb, ERROR_ME_DEBUG_WARN))
2609 warn_when_safe_lispobj (class_, Qdebug, Fcons (sig, data)); 2609 warn_when_safe_lispobj (class_, Qdebug, Fcons (sig, data));
2610 else if (ERRB_EQ (errb, ERROR_ME_WARN)) 2610 else if (ERRB_EQ (errb, ERROR_ME_WARN))
2611 warn_when_safe_lispobj (class_, Qwarning, Fcons (sig, data)); 2611 warn_when_safe_lispobj (class_, Qwarning, Fcons (sig, data));
2612 else 2612 else
2613 for (;;) 2613 signal_error_1 (sig, data);
2614 Fsignal (sig, data);
2615 } 2614 }
2616 2615
2617 /* Signal a continuable error or display a warning or do nothing, 2616 /* Signal a continuable error or display a warning or do nothing,
2618 according to ERRB. */ 2617 according to ERRB. */
2619 2618
2671 DOESNT_RETURN 2670 DOESNT_RETURN
2672 signal_error (Lisp_Object type, const Ascbyte *reason, Lisp_Object frob) 2671 signal_error (Lisp_Object type, const Ascbyte *reason, Lisp_Object frob)
2673 { 2672 {
2674 signal_error_1 (type, build_error_data (reason, frob)); 2673 signal_error_1 (type, build_error_data (reason, frob));
2675 } 2674 }
2675
2676 /* NOTE NOTE NOTE: If you feel you need signal_ierror() or something
2677 similar when reason is a non-ASCII message, you're probably doing
2678 something wrong. When you have an error message from an external
2679 source, you should put the error message as the first item in FROB and
2680 put a string in REASON indicating what you were doing when the error
2681 message occurred. Use signal_error_2() for such a case. */
2676 2682
2677 void 2683 void
2678 maybe_signal_error (Lisp_Object type, const Ascbyte *reason, 2684 maybe_signal_error (Lisp_Object type, const Ascbyte *reason,
2679 Lisp_Object frob, Lisp_Object class_, 2685 Lisp_Object frob, Lisp_Object class_,
2680 Error_Behavior errb) 2686 Error_Behavior errb)