diff src/lread.c @ 25555:301ce7f0b398

(Vbyte_boolean_vars): New variable. (defvar_bool, syms_of_lread): Use it.
author Dave Love <fx@gnu.org>
date Mon, 06 Sep 1999 11:02:28 +0000
parents 1fb18e7e3f35
children a5eaace0fa01
line wrap: on
line diff
--- a/src/lread.c	Mon Sep 06 09:05:24 1999 +0000
+++ b/src/lread.c	Mon Sep 06 11:02:28 1999 +0000
@@ -127,6 +127,9 @@
    compiled) instead of readevalloop.  */
 Lisp_Object Vload_source_file_function;
 
+/* List of all DEFVAR_BOOL variables.  Used by the byte optimizer.  */
+Lisp_Object Vbyte_boolean_vars;
+
 /* List of descriptors now open for Fload.  */
 static Lisp_Object load_descriptor_list;
 
@@ -3038,6 +3041,7 @@
   XMISCTYPE (val) = Lisp_Misc_Boolfwd;
   XBOOLFWD (val)->boolvar = address;
   XSYMBOL (sym)->value = val;
+  Vbyte_boolean_vars = Fcons (sym, Vbyte_boolean_vars);
 }
 
 /* Similar but define a variable whose value is the Lisp Object stored
@@ -3421,6 +3425,10 @@
      "List of files that were preloaded (when dumping Emacs).");
   Vpreloaded_file_list = Qnil;
 
+  DEFVAR_LISP ("byte-boolean-vars", &Vbyte_boolean_vars,
+     "List of all DEFVAR_BOOL variables, used by the byte code optimizer.");
+  Vbyte_boolean_vars = Qnil;
+
   /* Vsource_directory was initialized in init_lread.  */
 
   load_descriptor_list = Qnil;