Mercurial > hg > xemacs-beta
diff src/lisp.h @ 371:cc15677e0335 r21-2b1
Import from CVS: tag r21-2b1
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:03:08 +0200 |
parents | a4f53d9b3154 |
children | 6240c7796c7a |
line wrap: on
line diff
--- a/src/lisp.h Mon Aug 13 11:01:58 2007 +0200 +++ b/src/lisp.h Mon Aug 13 11:03:08 2007 +0200 @@ -528,7 +528,7 @@ Lisp_Type_Int, /* XRECORD_LHEADER (object) points to a struct lrecord_header - lheader->implementation determines the type (and GC behavior) + lheader->implementation determines the type (and GC behaviour) of the object. */ Lisp_Type_Record, @@ -960,7 +960,7 @@ struct lrecord_header lheader; Lisp_Object next; long size; - unsigned long bits[1]; + unsigned int bits[1]; }; DECLARE_LRECORD (bit_vector, struct Lisp_Bit_Vector); @@ -1003,9 +1003,9 @@ { unsigned int ui = (unsigned int) i; if (value) - (v)->bits[ui >> LONGBITS_LOG2] |= (1UL << (ui & (LONGBITS_POWER_OF_2 - 1))); + (v)->bits[ui >> LONGBITS_LOG2] |= (1 << (ui & (LONGBITS_POWER_OF_2 - 1))); else - (v)->bits[ui >> LONGBITS_LOG2] &= ~(1UL << (ui & (LONGBITS_POWER_OF_2 - 1))); + (v)->bits[ui >> LONGBITS_LOG2] &= ~(1 << (ui & (LONGBITS_POWER_OF_2 - 1))); } /* Number of longs required to hold LEN bits */ @@ -1027,25 +1027,9 @@ struct Lisp_String *name; Lisp_Object value; Lisp_Object function; + /* non-nil if the symbol is interned in Vobarray */ + Lisp_Object obarray; Lisp_Object plist; - /* Information on obarray status of the symbol. Each symbol can be - interned into one and only one obarray during its life-time. An - interned symbol can be uninterned, but the reverse does not hold - true. We need to know whether the symbol is interned to Vobarray - (for the purposes of printing), and whether the symbol is - interned anywhere at all. We also need to know whether the - symbol is being referenced through a pure structure. - - The .obarray_flags field is an integer mask with the following - meanings for bits: - - * 1 - symbol is interned somewhere; - * 2 - symbol is interned to Vobarray; - * 4 - symbol is referenced by a pure structure. - - All of this is unneeded in 21.2, which does not have pure space in - our sense of the word, thanks to Olivier. */ - int obarray_flags; }; #define SYMBOL_IS_KEYWORD(sym) (string_byte (XSYMBOL(sym)->name, 0) == ':') @@ -1079,9 +1063,6 @@ #define symbol_function(s) ((s)->function) #define symbol_plist(s) ((s)->plist) -#define symbol_obarray_flags(s) ((s)->obarray_flags) -#define XSYMBOL_OBARRAY_FLAGS(x) (XSYMBOL (x)->obarray_flags) - /*********** subr ***********/ typedef Lisp_Object (*lisp_fn_t) (void); @@ -1722,7 +1703,7 @@ #define NNGCPRO5(v1,v2,v3,v4,v5) \ debug_gcpro5 (__FILE__, __LINE__,&nngcpro1,&nngcpro2,&nngcpro3,&nngcpro4,\ &nngcpro5,&v1,&v2,&v3,&v4,&v5) -#define NNUNGCPRO \ +#define NUNNGCPRO \ debug_ungcpro(__FILE__, __LINE__,&nngcpro1) #else /* ! DEBUG_GCPRO */ @@ -2807,8 +2788,7 @@ extern Lisp_Object Vconsole_list, Vcontrolling_terminal; extern Lisp_Object Vcurrent_compiled_function_annotation, Vcurrent_load_list; extern Lisp_Object Vcurrent_mouse_event, Vcurrent_prefix_arg, Vdata_directory; -extern Lisp_Object Vdirectory_sep_char, Vdisabled_command_hook; -extern Lisp_Object Vdoc_directory, Vinternal_doc_file_name; +extern Lisp_Object Vdisabled_command_hook, Vdoc_directory, Vinternal_doc_file_name; extern Lisp_Object Vecho_area_buffer, Vemacs_major_version; extern Lisp_Object Vemacs_minor_version, Vexec_directory, Vexec_path; extern Lisp_Object Vexecuting_macro, Vfeatures, Vfile_domain;