GNU bug report logs -
#16103
24.3.50; `read' and circular objects
Previous Next
Reported by: Drew Adams <drew.adams <at> oracle.com>
Date: Tue, 10 Dec 2013 20:52:02 UTC
Severity: minor
Found in version 24.3.50
Done: Andreas Schwab <schwab <at> linux-m68k.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#16103: 24.3.50; `read' and circular objects
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 16103 <at> debbugs.gnu.org.
--
16103: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16103
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
You didn't set print-circle.
Andreas.
--
Andreas Schwab, schwab <at> linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."
[Message part 3 (message/rfc822, inline)]
Dunno whether this is a bug. If it is not, I'd appreciate some help
understanding it. (elisp) `Circular Objects' does not seem to cover it,
AFAICT.
This Lisp code is in a file:
((last-sort-comparer
(bmkp-info-cp bmkp-gnus-cp bmkp-url-cp bmkp-local-file-type-cp)
bmkp-alpha-p)
(last-reverse-sort-p)
(last-reverse-multi-sort-p)
(last-latest-bookmark-alist #1=(#4=#("setq" 0 4
(bmkp-full-record #1#))
(filename . "~/.emacs")
(buffer-name . ".emacs")
(front-context-string . " (append (l")
(rear-context-string . "(setq load-path\n")
(front-context-region-string)
(rear-context-region-string)
(visits . 0)
(time . #2=(21158 44564 146055 551000))
(created . #2#)
(position . 17)))
(last-bmenu-omitted-bookmarks)
(last-bmenu-marked-bookmarks)
(last-bmenu-filter-function)
(last-bmenu-filter-pattern . #3="")
(last-bmenu-title . #3#)
(last-bmenu-bookmark . #4#)
(last-specific-buffer . #3#)
(last-specific-file . #3#)
(last-bmenu-toggle-filenames . t)
(last-bmenu-before-hide-marked-alist)
(last-bmenu-before-hide-unmarked-alist)
(last-bookmark-file . "/home/fcihh/.emacs.bmk"))
With point at bob in the file, I do (read (current-buffer)), and this
is the result:
((last-sort-comparer
(bmkp-info-cp bmkp-gnus-cp bmkp-url-cp bmkp-local-file-type-cp)
bmkp-alpha-p)
(last-reverse-sort-p)
(last-reverse-multi-sort-p)
(last-latest-bookmark-alist
(#("setq" 0 4
(bmkp-full-record #2))
(filename . "~/.emacs")
(buffer-name . ".emacs")
(front-context-string . " (append (l")
(rear-context-string . "(setq load-path\n")
(front-context-region-string)
(rear-context-region-string)
(visits . 0)
(time 21158 44564 146055 551000)
(created 21158 44564 146055 551000)
(position . 17)))
(last-bmenu-omitted-bookmarks)
(last-bmenu-marked-bookmarks)
(last-bmenu-filter-function)
(last-bmenu-filter-pattern . "")
(last-bmenu-title . "")
(last-bmenu-bookmark .
#("setq" 0 4
(bmkp-full-record
(#2
(filename . "~/.emacs")
(buffer-name . ".emacs")
(front-context-string . " (append (l")
(rear-context-string . "(setq load-path\n")
(front-context-region-string)
(rear-context-region-string)
(visits . 0)
(time 21158 44564 146055 551000)
(created 21158 44564 146055 551000)
(position . 17)))))
(last-specific-buffer . "")
(last-specific-file . "")
(last-bmenu-toggle-filenames . t)
(last-bmenu-before-hide-marked-alist)
(last-bmenu-before-hide-unmarked-alist)
(last-bookmark-file . "/home/fcihh/.emacs.bmk"))
Notice the remaining #2 occurrences. I would have expected the above
pp-written sexp to be similar to what was in the file: a representation
of similar circular list structure.
Or if not that, I would at least expect that all #-notation references
to shared structure would be resolved, so that there are no orphaned
references like #2.
I would prefer to have `read' give me the (equivalent/similar) list
structure, with circularities. But I could probably live with
`read' giving me a tree with copies where there originally was shared
structure (i.e., all # references resolved).
What I'm seeing looks to me like a bug. Help understanding is
appreciated. I write out a list structure that has circularities,
and I want to `read' the result to get back a similar structure. What
should I be doing differently, or what is it that I need to be aware
of, that I'm currently missing? Thx.
In GNU Emacs 24.3.50.2 (i686-pc-mingw32)
of 2013-11-28 on LEG570
Bzr revision: 115271 rgm <at> gnu.org-20131128203155-qjc1xsp19z2k64b2
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
`configure --enable-checking 'CFLAGS=-O0 -g3' CPPFLAGS=-DGLYPH_DEBUG=1'
This bug report was last modified 11 years and 224 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.