Mercurial > emacs
comparison src/data.c @ 10245:f0637b2f1671
(wrong_type_argument): Abort if VALUE is invalid Lisp object.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 25 Dec 1994 17:28:51 +0000 |
parents | d64bdd958254 |
children | 8b95a9a6d466 |
comparison
equal
deleted
inserted
replaced
10244:3d95ea97eb9e | 10245:f0637b2f1671 |
---|---|
99 (EQ (predicate, Qintegerp) || EQ (predicate, Qinteger_or_marker_p))) | 99 (EQ (predicate, Qintegerp) || EQ (predicate, Qinteger_or_marker_p))) |
100 return Fstring_to_number (value); | 100 return Fstring_to_number (value); |
101 if (INTEGERP (value) && EQ (predicate, Qstringp)) | 101 if (INTEGERP (value) && EQ (predicate, Qstringp)) |
102 return Fnumber_to_string (value); | 102 return Fnumber_to_string (value); |
103 } | 103 } |
104 | |
105 /* If VALUE is not even a valid Lisp object, abort here | |
106 where we can get a backtrace showing where it came from. */ | |
107 if ((unsigned int) XGCTYPE (value) > Lisp_Window + 2) | |
108 abort (); | |
109 | |
104 value = Fsignal (Qwrong_type_argument, Fcons (predicate, Fcons (value, Qnil))); | 110 value = Fsignal (Qwrong_type_argument, Fcons (predicate, Fcons (value, Qnil))); |
105 tem = call1 (predicate, value); | 111 tem = call1 (predicate, value); |
106 } | 112 } |
107 while (NILP (tem)); | 113 while (NILP (tem)); |
108 return value; | 114 return value; |