* bug#58068: pretty-print corrupts data modified by set-cdr!
@ 2022-09-24 22:09 slbtty
0 siblings, 0 replies; only message in thread
From: slbtty @ 2022-09-24 22:09 UTC (permalink / raw)
To: 58068
GNU Guile 3.0.8
Using `guile3 < file.scm` to run the code below will makes the result
of tp unpredictable (pointing to very random things)
I am not sure about the set-cdr! and quote usage. However, i runned
the same code in other schemes, mit, chicken, racket/r6rs, gambit, and
they all yield tl as (1 2 3).
(use-modules (ice-9 pretty-print))
(define tl '(1 2))
(define tp (cdr tl))
(set-cdr! tp (cons 3 '()))
(pretty-print tl)
(pretty-print tp)
---
However, if i use plain old (display tp), the code will out put
expected valve (1 2 3) (3)
(define tl '(1 2))
(define tp (cdr tl))
(set-cdr! tp (cons 3 '()))
(display tl) (newline)
(display tp) (newline)
---
Context:
I am using guile3's repl and whenever i access a variable's by typing
its name after (set-cdr!), the result will goes wild.
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-09-24 22:09 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-24 22:09 bug#58068: pretty-print corrupts data modified by set-cdr! slbtty
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).