aboutsummaryrefslogtreecommitdiffstats
path: root/src/lisp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h20
1 files changed, 7 insertions, 13 deletions
diff --git a/src/lisp.h b/src/lisp.h
index bc48b790a14..c0ddb7f2b02 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -162,7 +162,7 @@ extern int suppress_checking EXTERNALLY_VISIBLE;
162 162
163/* First, try and define DECL_ALIGN(type,var) which declares a static 163/* First, try and define DECL_ALIGN(type,var) which declares a static
164 variable VAR of type TYPE with the added requirement that it be 164 variable VAR of type TYPE with the added requirement that it be
165 TYPEBITS-aligned. */ 165 TYPEBITS-aligned. */
166#ifndef NO_DECL_ALIGN 166#ifndef NO_DECL_ALIGN
167# ifndef DECL_ALIGN 167# ifndef DECL_ALIGN
168# if HAVE_ATTRIBUTE_ALIGNED 168# if HAVE_ATTRIBUTE_ALIGNED
@@ -1088,11 +1088,9 @@ enum symbol_redirect
1088 SYMBOL_PLAINVAL = 4, 1088 SYMBOL_PLAINVAL = 4,
1089 SYMBOL_VARALIAS = 1, 1089 SYMBOL_VARALIAS = 1,
1090 SYMBOL_LOCALIZED = 2, 1090 SYMBOL_LOCALIZED = 2,
1091 SYMBOL_FORWARDED = 3 1091 SYMBOL_FORWARDED = 3
1092}; 1092};
1093 1093
1094/* In a symbol, the markbit of the plist is used as the gc mark bit */
1095
1096struct Lisp_Symbol 1094struct Lisp_Symbol
1097{ 1095{
1098 unsigned gcmarkbit : 1; 1096 unsigned gcmarkbit : 1;
@@ -1101,8 +1099,7 @@ struct Lisp_Symbol
1101 0 : it's a plain var, the value is in the `value' field. 1099 0 : it's a plain var, the value is in the `value' field.
1102 1 : it's a varalias, the value is really in the `alias' symbol. 1100 1 : it's a varalias, the value is really in the `alias' symbol.
1103 2 : it's a localized var, the value is in the `blv' object. 1101 2 : it's a localized var, the value is in the `blv' object.
1104 3 : it's a forwarding variable, the value is in `forward'. 1102 3 : it's a forwarding variable, the value is in `forward'. */
1105 */
1106 enum symbol_redirect redirect : 3; 1103 enum symbol_redirect redirect : 3;
1107 1104
1108 /* Non-zero means symbol is constant, i.e. changing its value 1105 /* Non-zero means symbol is constant, i.e. changing its value
@@ -1119,15 +1116,12 @@ struct Lisp_Symbol
1119 unsigned declared_special : 1; 1116 unsigned declared_special : 1;
1120 1117
1121 /* The symbol's name, as a Lisp string. 1118 /* The symbol's name, as a Lisp string.
1122
1123 The name "xname" is used to intentionally break code referring to 1119 The name "xname" is used to intentionally break code referring to
1124 the old field "name" of type pointer to struct Lisp_String. */ 1120 the old field "name" of type pointer to struct Lisp_String. */
1125 Lisp_Object xname; 1121 Lisp_Object xname;
1126 1122
1127 /* Value of the symbol or Qunbound if unbound. If this symbol is a 1123 /* Value of the symbol or Qunbound if unbound. Which alternative of the
1128 defvaralias, `alias' contains the symbol for which it is an 1124 union is used depends on the `redirect' field above. */
1129 alias. Use the SYMBOL_VALUE and SET_SYMBOL_VALUE macros to get
1130 and set a symbol's value, to take defvaralias into account. */
1131 union { 1125 union {
1132 Lisp_Object value; 1126 Lisp_Object value;
1133 struct Lisp_Symbol *alias; 1127 struct Lisp_Symbol *alias;
@@ -1322,7 +1316,7 @@ struct Lisp_Misc_Any /* Supertype of all Misc types. */
1322 enum Lisp_Misc_Type type : 16; /* = Lisp_Misc_??? */ 1316 enum Lisp_Misc_Type type : 16; /* = Lisp_Misc_??? */
1323 unsigned gcmarkbit : 1; 1317 unsigned gcmarkbit : 1;
1324 int spacer : 15; 1318 int spacer : 15;
1325 /* Make it as long as "Lisp_Free without padding". */ 1319 /* Make it as long as "Lisp_Free without padding". */
1326 void *fill; 1320 void *fill;
1327}; 1321};
1328 1322
@@ -3607,7 +3601,7 @@ extern void init_system_name (void);
3607 3601
3608#define SWITCH_ENUM_CAST(x) (x) 3602#define SWITCH_ENUM_CAST(x) (x)
3609 3603
3610/* Use this to suppress gcc's warnings. */ 3604/* Use this to suppress gcc's warnings. */
3611#ifdef lint 3605#ifdef lint
3612 3606
3613/* Use CODE only if lint checking is in effect. */ 3607/* Use CODE only if lint checking is in effect. */