[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#58109: simple-format vs (ice-9 format) bug in 3.0.7?

From: Jean Abou Samra
Subject: bug#58109: simple-format vs (ice-9 format) bug in 3.0.7?
Date: Tue, 27 Sep 2022 12:38:29 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.1

Le 27/09/2022 à 12:35, Jean Abou Samra a écrit :

Le 27/09/2022 à 12:23, Christopher Lam a écrit :
Hi guilers, here's a short bash session.
Why would the first bash call to "guile s.scm" work, but not the second one?
guile-3.0.7 on ubuntu.

This is a duplicate of

Uh, at the end of module/ice-9/format.scm, there is

;; Thanks to Shuji Narazaki
(module-set! the-root-module 'format format)

which dates back to

commit 14469b7c69feb0f2c5b8a093f19fe2a548b31c5b
Author: Greg J. Badros <gjb@cs.washington.edu>
Date:   Thu Jan 20 20:58:30 2000 +0000

    * format.scm: Use (variable-set! (builtin-variable 'format)) to
    re-define format to be format:format (instead of just define,
    which interacts poorly with the module system).  Thanks to Shuji
    Narazaki for this change.

diff --git a/ice-9/format.scm b/ice-9/format.scm
index fce2737ce..40f20b3da 100644
--- a/ice-9/format.scm
+++ b/ice-9/format.scm
@@ -1670,7 +1670,9 @@

 (define format:abort (lambda () (error "error in format")))

-(define format format:format)
+;;(define format format:format)
+;; Thanks to Shuji Narazaki
+(variable-set! (builtin-variable 'format) format:format)

 ;; If this is not possible then a continuation is used to recover
 ;; properly from a format error. In this case format returns #f.

This probably predates #:replace and could be removed now, right?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]