(disassemble-internal): Handle lazy-loaded doc strings.
(disassemble-1): Handle lazy-loaded bytecode objects.
This commit is contained in:
parent
83c4abcb48
commit
3fd4909e45
1 changed files with 4 additions and 1 deletions
|
@ -114,7 +114,8 @@ redefine OBJECT if it is a symbol."
|
|||
(if name (format " %s" name) "")))))
|
||||
(let ((doc (if (consp obj)
|
||||
(and (stringp (car obj)) (car obj))
|
||||
(and (> (length obj) 4) (aref obj 4)))))
|
||||
;; Use documentation to get lazy-loaded doc string
|
||||
(documentation obj t))))
|
||||
(if (and doc (stringp doc))
|
||||
(progn (and (consp obj) (setq obj (cdr obj)))
|
||||
(indent-to indent)
|
||||
|
@ -166,6 +167,8 @@ OBJ should be a call to BYTE-CODE generated by the byte compiler."
|
|||
(if (consp obj)
|
||||
(setq bytes (car (cdr obj)) ;the byte code
|
||||
constvec (car (cdr (cdr obj)))) ;constant vector
|
||||
;; If it is lazy-loaded, load it now
|
||||
(fetch-bytecode obj)
|
||||
(setq bytes (aref obj 1)
|
||||
constvec (aref obj 2)))
|
||||
(let ((lap (byte-decompile-bytecode bytes constvec))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue