comparison src/data.c @ 771:943eaba38521

[xemacs-hg @ 2002-03-13 08:51:24 by ben] The big ben-mule-21-5 check-in! Various files were added and deleted. See CHANGES-ben-mule. There are still some test suite failures. No crashes, though. Many of the failures have to do with problems in the test suite itself rather than in the actual code. I'll be addressing these in the next day or so -- none of the test suite failures are at all critical. Meanwhile I'll be trying to address the biggest issues -- i.e. build or run failures, which will almost certainly happen on various platforms. All comments should be sent to ben@xemacs.org -- use a Cc: if necessary when sending to mailing lists. There will be pre- and post- tags, something like pre-ben-mule-21-5-merge-in, and post-ben-mule-21-5-merge-in.
author ben
date Wed, 13 Mar 2002 08:54:06 +0000
parents fdefd0186b75
children e38acbeb1cae
comparison
equal deleted inserted replaced
770:336a418893b5 771:943eaba38521
29 #include "lisp.h" 29 #include "lisp.h"
30 30
31 #include "buffer.h" 31 #include "buffer.h"
32 #include "bytecode.h" 32 #include "bytecode.h"
33 #include "syssignal.h" 33 #include "syssignal.h"
34 34 #include "sysfloat.h"
35 #ifdef LISP_FLOAT_TYPE
36 /* Need to define a differentiating symbol -- see sysfloat.h */
37 # define THIS_FILENAME data_c
38 # include "sysfloat.h"
39 #endif /* LISP_FLOAT_TYPE */
40 35
41 Lisp_Object Qnil, Qt, Qquote, Qlambda, Qunbound; 36 Lisp_Object Qnil, Qt, Qquote, Qlambda, Qunbound;
42 Lisp_Object Qerror_conditions, Qerror_message; 37 Lisp_Object Qerror_conditions, Qerror_message;
43 Lisp_Object Qerror, Qquit, Qsyntax_error, Qinvalid_read_syntax; 38 Lisp_Object Qerror, Qquit, Qsyntax_error, Qinvalid_read_syntax;
44 Lisp_Object Qlist_formation_error, Qstructure_formation_error; 39 Lisp_Object Qlist_formation_error, Qstructure_formation_error;
366 If non-nil, the return value will be a list whose first element is 361 If non-nil, the return value will be a list whose first element is
367 `interactive' and whose second element is the interactive spec. 362 `interactive' and whose second element is the interactive spec.
368 */ 363 */
369 (subr)) 364 (subr))
370 { 365 {
371 const char *prompt; 366 const CIntbyte *prompt;
372 CHECK_SUBR (subr); 367 CHECK_SUBR (subr);
373 prompt = XSUBR (subr)->prompt; 368 prompt = XSUBR (subr)->prompt;
374 return prompt ? list2 (Qinteractive, build_string (prompt)) : Qnil; 369 return prompt ? list2 (Qinteractive, build_msg_string (prompt)) : Qnil;
375 } 370 }
376 371
377 372
378 DEFUN ("characterp", Fcharacterp, 1, 1, 0, /* 373 DEFUN ("characterp", Fcharacterp, 1, 1, 0, /*
379 Return t if OBJECT is a character. 374 Return t if OBJECT is a character.
766 goto retry; 761 goto retry;
767 } 762 }
768 763
769 if (idx < 0) goto range_error; 764 if (idx < 0) goto range_error;
770 765
766 CHECK_LISP_WRITEABLE (array);
771 if (VECTORP (array)) 767 if (VECTORP (array))
772 { 768 {
773 if (idx >= XVECTOR_LENGTH (array)) goto range_error; 769 if (idx >= XVECTOR_LENGTH (array)) goto range_error;
774 XVECTOR_DATA (array)[idx] = newval; 770 XVECTOR_DATA (array)[idx] = newval;
775 } 771 }