[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#58068: pretty-print corrupts data modified by set-cdr!
From: |
slbtty |
Subject: |
bug#58068: pretty-print corrupts data modified by set-cdr! |
Date: |
Sat, 24 Sep 2022 18:09:45 -0400 |
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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- bug#58068: pretty-print corrupts data modified by set-cdr!,
slbtty <=