comparison src/lisp.h @ 108459:1d1025faed5f

Merge from mainline.
author Katsumi Yamaoka <katsumi@flagship2>
date Wed, 05 May 2010 10:17:53 +0000
parents 261591829d04
children ee0a08d8887e
comparison
equal deleted inserted replaced
108458:30b11e5df204 108459:1d1025faed5f
718 should not be read after 'c' is first modified. Also, neither 718 should not be read after 'c' is first modified. Also, neither
719 argument should be evaluated more than once; side effects are 719 argument should be evaluated more than once; side effects are
720 especially common in the second argument. */ 720 especially common in the second argument. */
721 #define XSETCAR(c,n) (XCAR_AS_LVALUE(c) = (n)) 721 #define XSETCAR(c,n) (XCAR_AS_LVALUE(c) = (n))
722 #define XSETCDR(c,n) (XCDR_AS_LVALUE(c) = (n)) 722 #define XSETCDR(c,n) (XCDR_AS_LVALUE(c) = (n))
723
724 /* For performance: Fast storage of positive integers into the
725 fields of a cons cell. See above caveats. */
726 #define XSETCARFASTINT(c,n) XSETFASTINT(XCAR_AS_LVALUE(c),(n))
727 #define XSETCDRFASTINT(c,n) XSETFASTINT(XCDR_AS_LVALUE(c),(n))
728 723
729 /* Take the car or cdr of something whose type is not known. */ 724 /* Take the car or cdr of something whose type is not known. */
730 #define CAR(c) \ 725 #define CAR(c) \
731 (CONSP ((c)) ? XCAR ((c)) \ 726 (CONSP ((c)) ? XCAR ((c)) \
732 : NILP ((c)) ? Qnil \ 727 : NILP ((c)) ? Qnil \
2819 extern Lisp_Object intern P_ ((const char *)); 2814 extern Lisp_Object intern P_ ((const char *));
2820 extern Lisp_Object intern_c_string (const char *); 2815 extern Lisp_Object intern_c_string (const char *);
2821 extern Lisp_Object make_symbol P_ ((char *)); 2816 extern Lisp_Object make_symbol P_ ((char *));
2822 extern Lisp_Object oblookup P_ ((Lisp_Object, const char *, int, int)); 2817 extern Lisp_Object oblookup P_ ((Lisp_Object, const char *, int, int));
2823 #define LOADHIST_ATTACH(x) \ 2818 #define LOADHIST_ATTACH(x) \
2824 if (initialized) Vcurrent_load_list = Fcons (x, Vcurrent_load_list) 2819 do { \
2820 if (initialized) Vcurrent_load_list = Fcons (x, Vcurrent_load_list); \
2821 } while (0)
2825 extern Lisp_Object Vcurrent_load_list; 2822 extern Lisp_Object Vcurrent_load_list;
2826 extern Lisp_Object Vload_history, Vload_suffixes, Vload_file_rep_suffixes; 2823 extern Lisp_Object Vload_history, Vload_suffixes, Vload_file_rep_suffixes;
2827 extern int openp P_ ((Lisp_Object, Lisp_Object, Lisp_Object, 2824 extern int openp P_ ((Lisp_Object, Lisp_Object, Lisp_Object,
2828 Lisp_Object *, Lisp_Object)); 2825 Lisp_Object *, Lisp_Object));
2829 extern int isfloat_string P_ ((char *, int)); 2826 extern int isfloat_string P_ ((char *, int));
2902 extern Lisp_Object apply_lambda P_ ((Lisp_Object, Lisp_Object, int)); 2899 extern Lisp_Object apply_lambda P_ ((Lisp_Object, Lisp_Object, int));
2903 extern Lisp_Object internal_catch P_ ((Lisp_Object, Lisp_Object (*) (Lisp_Object), Lisp_Object)); 2900 extern Lisp_Object internal_catch P_ ((Lisp_Object, Lisp_Object (*) (Lisp_Object), Lisp_Object));
2904 extern Lisp_Object internal_lisp_condition_case P_ ((Lisp_Object, Lisp_Object, Lisp_Object)); 2901 extern Lisp_Object internal_lisp_condition_case P_ ((Lisp_Object, Lisp_Object, Lisp_Object));
2905 extern Lisp_Object internal_condition_case P_ ((Lisp_Object (*) (void), Lisp_Object, Lisp_Object (*) (Lisp_Object))); 2902 extern Lisp_Object internal_condition_case P_ ((Lisp_Object (*) (void), Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2906 extern Lisp_Object internal_condition_case_1 P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object, Lisp_Object, Lisp_Object (*) (Lisp_Object))); 2903 extern Lisp_Object internal_condition_case_1 P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object, Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2907 extern Lisp_Object internal_condition_case_2 P_ ((Lisp_Object (*) (int, Lisp_Object *), int, Lisp_Object *, Lisp_Object, Lisp_Object (*) (Lisp_Object))); 2904 extern Lisp_Object internal_condition_case_2 P_ ((Lisp_Object (*) (Lisp_Object, Lisp_Object), Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2905 extern Lisp_Object internal_condition_case_n P_ ((Lisp_Object (*) (int, Lisp_Object *), int, Lisp_Object *, Lisp_Object, Lisp_Object (*) (Lisp_Object)));
2908 extern void specbind P_ ((Lisp_Object, Lisp_Object)); 2906 extern void specbind P_ ((Lisp_Object, Lisp_Object));
2909 extern void record_unwind_protect P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object)); 2907 extern void record_unwind_protect P_ ((Lisp_Object (*) (Lisp_Object), Lisp_Object));
2910 extern Lisp_Object unbind_to P_ ((int, Lisp_Object)); 2908 extern Lisp_Object unbind_to P_ ((int, Lisp_Object));
2911 extern void error P_ ((/* char *, ... */)) NO_RETURN; 2909 extern void error P_ ((/* char *, ... */)) NO_RETURN;
2912 extern void do_autoload P_ ((Lisp_Object, Lisp_Object)); 2910 extern void do_autoload P_ ((Lisp_Object, Lisp_Object));
3060 EXFUN (Ffile_readable_p, 1); 3058 EXFUN (Ffile_readable_p, 1);
3061 EXFUN (Ffile_executable_p, 1); 3059 EXFUN (Ffile_executable_p, 1);
3062 EXFUN (Fread_file_name, 6); 3060 EXFUN (Fread_file_name, 6);
3063 extern Lisp_Object close_file_unwind P_ ((Lisp_Object)); 3061 extern Lisp_Object close_file_unwind P_ ((Lisp_Object));
3064 extern void report_file_error P_ ((const char *, Lisp_Object)) NO_RETURN; 3062 extern void report_file_error P_ ((const char *, Lisp_Object)) NO_RETURN;
3065 extern int internal_delete_file P_ ((Lisp_Object)); 3063 extern int internal_delete_file P_ ((Lisp_Object, Lisp_Object));
3066 extern void syms_of_fileio P_ ((void)); 3064 extern void syms_of_fileio P_ ((void));
3067 extern Lisp_Object make_temp_name P_ ((Lisp_Object, int)); 3065 extern Lisp_Object make_temp_name P_ ((Lisp_Object, int));
3068 EXFUN (Fmake_symbolic_link, 3); 3066 EXFUN (Fmake_symbolic_link, 3);
3069 extern Lisp_Object Qdelete_file; 3067 extern Lisp_Object Qdelete_file;
3070 3068