diff options
| author | Stefan Monnier | 2010-12-22 19:00:12 -0500 |
|---|---|---|
| committer | Stefan Monnier | 2010-12-22 19:00:12 -0500 |
| commit | 17870c01f609101bc059ff0c38043d3734a35e72 (patch) | |
| tree | dd28373fb555f04167ffac8992db14376fdd8373 | |
| parent | a65b85b5f060567a5d9dcbb7e8cbac4ddbbc0b23 (diff) | |
| download | emacs-17870c01f609101bc059ff0c38043d3734a35e72.tar.gz emacs-17870c01f609101bc059ff0c38043d3734a35e72.zip | |
Fix up last change.
* 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.
| -rw-r--r-- | lisp/ChangeLog | 5 | ||||
| -rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 6 | ||||
| -rw-r--r-- | src/ChangeLog | 3 | ||||
| -rw-r--r-- | src/print.c | 8 |
4 files changed, 12 insertions, 10 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 48cd0058521..f3449278d68 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2010-12-22 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * emacs-lisp/bytecomp.el (byte-compile-output-docform): Fix up use of | ||
| 4 | print-number-table. | ||
| 5 | |||
| 1 | 2010-12-21 Chong Yidong <cyd@stupidchicken.com> | 6 | 2010-12-21 Chong Yidong <cyd@stupidchicken.com> |
| 2 | 7 | ||
| 3 | * help-fns.el (find-lisp-object-file-name): Locate .emacs from | 8 | * help-fns.el (find-lisp-object-file-name): Locate .emacs from |
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index f04aad994f3..28fb1f80d69 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el | |||
| @@ -2058,9 +2058,9 @@ list that represents a doc string reference. | |||
| 2058 | ;; to objects already output | 2058 | ;; to objects already output |
| 2059 | ;; (for instance, gensyms in the arg list). | 2059 | ;; (for instance, gensyms in the arg list). |
| 2060 | (let (non-nil) | 2060 | (let (non-nil) |
| 2061 | (dotimes (i (length print-number-table)) | 2061 | (when (hash-table-p print-number-table) |
| 2062 | (if (aref print-number-table i) | 2062 | (maphash (lambda (k v) (if v (setq non-nil t))) |
| 2063 | (setq non-nil t))) | 2063 | print-number-table)) |
| 2064 | (not non-nil))) | 2064 | (not non-nil))) |
| 2065 | ;; Output the byte code and constants specially | 2065 | ;; Output the byte code and constants specially |
| 2066 | ;; for lazy dynamic loading. | 2066 | ;; for lazy dynamic loading. |
diff --git a/src/ChangeLog b/src/ChangeLog index 2c3f8f92f83..820c4469317 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,8 @@ | |||
| 1 | 2010-12-22 Stefan Monnier <monnier@iro.umontreal.ca> | 1 | 2010-12-22 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 2 | ||
| 3 | * print.c (PRINT_NUMBER_OBJECT, PRINT_NUMBER_STATUS): Remove. | ||
| 4 | (print_preprocess): Fix handling of uninterned symbols in last change. | ||
| 5 | |||
| 3 | * print.c (print, print_preprocess, print_object): Use a hash table | 6 | * print.c (print, print_preprocess, print_object): Use a hash table |
| 4 | rather than a linear table for Vprint_number_table. | 7 | rather than a linear table for Vprint_number_table. |
| 5 | 8 | ||
diff --git a/src/print.c b/src/print.c index 50a972cc94a..07faa46dfa6 100644 --- a/src/print.c +++ b/src/print.c | |||
| @@ -156,12 +156,6 @@ Lisp_Object Vprint_continuous_numbering; | |||
| 156 | int print_number_index; | 156 | int print_number_index; |
| 157 | Lisp_Object Vprint_number_table; | 157 | Lisp_Object Vprint_number_table; |
| 158 | 158 | ||
| 159 | /* PRINT_NUMBER_OBJECT returns the I'th object in Vprint_number_table TABLE. | ||
| 160 | PRINT_NUMBER_STATUS returns the status of the I'th object in TABLE. | ||
| 161 | See the comment of the variable Vprint_number_table. */ | ||
| 162 | #define PRINT_NUMBER_OBJECT(table,i) XVECTOR ((table))->contents[(i) * 2] | ||
| 163 | #define PRINT_NUMBER_STATUS(table,i) XVECTOR ((table))->contents[(i) * 2 + 1] | ||
| 164 | |||
| 165 | void print_interval (INTERVAL interval, Lisp_Object printcharfun); | 159 | void print_interval (INTERVAL interval, Lisp_Object printcharfun); |
| 166 | 160 | ||
| 167 | /* GDB resets this to zero on W32 to disable OutputDebugString calls. */ | 161 | /* GDB resets this to zero on W32 to disable OutputDebugString calls. */ |
| @@ -1314,7 +1308,7 @@ print_preprocess (Lisp_Object obj) | |||
| 1314 | && SYMBOLP (obj) | 1308 | && SYMBOLP (obj) |
| 1315 | && !SYMBOL_INTERNED_P (obj))) | 1309 | && !SYMBOL_INTERNED_P (obj))) |
| 1316 | { /* OBJ appears more than once. Let's remember that. */ | 1310 | { /* OBJ appears more than once. Let's remember that. */ |
| 1317 | if (EQ (Qt, num)) | 1311 | if (!INTEGERP (num)) |
| 1318 | { | 1312 | { |
| 1319 | print_number_index++; | 1313 | print_number_index++; |
| 1320 | /* Negative number indicates it hasn't been printed yet. */ | 1314 | /* Negative number indicates it hasn't been printed yet. */ |