]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix up last change.
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 23 Dec 2010 00:00:12 +0000 (19:00 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 23 Dec 2010 00:00:12 +0000 (19:00 -0500)
* lisp/emacs-lisp/bytecomp.el (byte-compile-output-docform): Fix up use of
print-number-table.
* src/print.c (PRINT_NUMBER_OBJECT, PRINT_NUMBER_STATUS): Remove.
(print_preprocess): Fix handling of uninterned symbols in last change.

lisp/ChangeLog
lisp/emacs-lisp/bytecomp.el
src/ChangeLog
src/print.c

index 48cd0058521e28adaed7cd47863c8a9d065bf6d9..f3449278d683dd3bc312812293b6df4779634784 100644 (file)
@@ -1,3 +1,8 @@
+2010-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * emacs-lisp/bytecomp.el (byte-compile-output-docform): Fix up use of
+       print-number-table.
+
 2010-12-21  Chong Yidong  <cyd@stupidchicken.com>
 
        * help-fns.el (find-lisp-object-file-name): Locate .emacs from
index f04aad994f3e415898ca87b88c05214d4c33084b..28fb1f80d69a551db20a4502484e98ae5fb136c6 100644 (file)
@@ -2058,9 +2058,9 @@ list that represents a doc string reference.
                         ;; to objects already output
                         ;; (for instance, gensyms in the arg list).
                         (let (non-nil)
-                          (dotimes (i (length print-number-table))
-                            (if (aref print-number-table i)
-                                (setq non-nil t)))
+                          (when (hash-table-p print-number-table)
+                            (maphash (lambda (k v) (if v (setq non-nil t)))
+                                     print-number-table))
                           (not non-nil)))
                    ;; Output the byte code and constants specially
                    ;; for lazy dynamic loading.
index 2c3f8f92f831346515650a53264b7c50e048d4d7..820c4469317c6c028848a41fdd67fe86b7c7d0f8 100644 (file)
@@ -1,5 +1,8 @@
 2010-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * print.c (PRINT_NUMBER_OBJECT, PRINT_NUMBER_STATUS): Remove.
+       (print_preprocess): Fix handling of uninterned symbols in last change.
+
        * print.c (print, print_preprocess, print_object): Use a hash table
        rather than a linear table for Vprint_number_table.
 
index 50a972cc94a87094755716c885e701b67e59de56..07faa46dfa63b149481dd9dd078e12eff6dd6462 100644 (file)
@@ -156,12 +156,6 @@ Lisp_Object Vprint_continuous_numbering;
 int print_number_index;
 Lisp_Object Vprint_number_table;
 
-/* PRINT_NUMBER_OBJECT returns the I'th object in Vprint_number_table TABLE.
-   PRINT_NUMBER_STATUS returns the status of the I'th object in TABLE.
-   See the comment of the variable Vprint_number_table.  */
-#define PRINT_NUMBER_OBJECT(table,i) XVECTOR ((table))->contents[(i) * 2]
-#define PRINT_NUMBER_STATUS(table,i) XVECTOR ((table))->contents[(i) * 2 + 1]
-
 void print_interval (INTERVAL interval, Lisp_Object printcharfun);
 
 /* GDB resets this to zero on W32 to disable OutputDebugString calls.  */
@@ -1314,7 +1308,7 @@ print_preprocess (Lisp_Object obj)
                  && SYMBOLP (obj)
                  && !SYMBOL_INTERNED_P (obj)))
            { /* OBJ appears more than once.    Let's remember that.  */
-             if (EQ (Qt, num))
+             if (!INTEGERP (num))
                {
                  print_number_index++;
                  /* Negative number indicates it hasn't been printed yet.  */