From unknown Sun Jun 15 08:04:21 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#15033 <15033@debbugs.gnu.org> To: bug#15033 <15033@debbugs.gnu.org> Subject: Status: [PATCH] Fix display of symbols containing backslashes Reply-To: bug#15033 <15033@debbugs.gnu.org> Date: Sun, 15 Jun 2025 15:04:21 +0000 retitle 15033 [PATCH] Fix display of symbols containing backslashes reassign 15033 guile submitter 15033 David Kastrup severity 15033 normal tag 15033 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 06 09:44:53 2013 Received: (at submit) by debbugs.gnu.org; 6 Aug 2013 13:44:53 +0000 Received: from localhost ([127.0.0.1]:42827 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V6hZE-0004DO-FC for submit@debbugs.gnu.org; Tue, 06 Aug 2013 09:44:52 -0400 Received: from eggs.gnu.org ([208.118.235.92]:34216) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V6hZB-0004D2-Ko for submit@debbugs.gnu.org; Tue, 06 Aug 2013 09:44:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V6hZ1-0005OG-N6 for submit@debbugs.gnu.org; Tue, 06 Aug 2013 09:44:44 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-101.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD, USER_IN_WHITELIST autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:58202) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V6hZ1-0005OA-L3 for submit@debbugs.gnu.org; Tue, 06 Aug 2013 09:44:39 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35919) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V6hYx-0001U9-3n for bug-guile@gnu.org; Tue, 06 Aug 2013 09:44:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1V6hYv-0005Mz-Sc for bug-guile@gnu.org; Tue, 06 Aug 2013 09:44:35 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:40755) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V6hYv-0005Me-Qb for bug-guile@gnu.org; Tue, 06 Aug 2013 09:44:33 -0400 Received: from localhost ([127.0.0.1]:47931 helo=lola) by fencepost.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1V6hYu-0003EO-Fc; Tue, 06 Aug 2013 09:44:32 -0400 Received: by lola (Postfix, from userid 1000) id 1547CEAC27; Tue, 6 Aug 2013 15:44:22 +0200 (CEST) From: David Kastrup To: bug-guile@gnu.org Subject: [PATCH] Fix display of symbols containing backslashes Date: Tue, 6 Aug 2013 15:44:08 +0200 Message-Id: <1375796648-5517-1-git-send-email-dak@gnu.org> X-Mailer: git-send-email 1.8.1.2 X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.4 (---) X-Debbugs-Envelope-To: submit Cc: David Kastrup X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.4 (---) Symbols printed with `#{...#}' notation need to double backslashes when displaying as they serve as escape characters when reading. The behavior before this patch is clearly erroneous: GNU Guile 2.0.7 [...] scheme@(guile-user)> (string->symbol "\\(") $1 = #{\\x28;}# scheme@(guile-user)> (symbol->string '#{\\x28;}#) $2 = "\\x28;" --- libguile/print.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libguile/print.c b/libguile/print.c index 50f5a3e..bb7fd84 100644 --- a/libguile/print.c +++ b/libguile/print.c @@ -448,7 +448,8 @@ print_extended_symbol (SCM sym, SCM port) SUBSEQUENT_IDENTIFIER_MASK | UC_CATEGORY_MASK_Zs)) { - if (!display_character (c, port, strategy)) + if (!display_character (c, port, strategy) + || (c == '\\' && !display_character (c, port, strategy))) scm_encoding_error ("print_extended_symbol", errno, "cannot convert to output locale", port, SCM_MAKE_CHAR (c)); -- 1.8.1.2 From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 06 18:04:38 2013 Received: (at 15033-done) by debbugs.gnu.org; 6 Aug 2013 22:04:38 +0000 Received: from localhost ([127.0.0.1]:43859 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V6pMr-0008LC-QG for submit@debbugs.gnu.org; Tue, 06 Aug 2013 18:04:38 -0400 Received: from world.peace.net ([96.39.62.75]:48794 ident=hope4) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1V6pMq-0008Kz-3z for 15033-done@debbugs.gnu.org; Tue, 06 Aug 2013 18:04:36 -0400 Received: from 209-6-91-212.c3-0.smr-ubr1.sbo-smr.ma.cable.rcn.com ([209.6.91.212] helo=tines.lan) by world.peace.net with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1V6pMj-0003gl-66; Tue, 06 Aug 2013 18:04:29 -0400 From: Mark H Weaver To: David Kastrup Subject: Re: bug#15033: [PATCH] Fix display of symbols containing backslashes References: <1375796648-5517-1-git-send-email-dak@gnu.org> Date: Tue, 06 Aug 2013 18:04:18 -0400 In-Reply-To: <1375796648-5517-1-git-send-email-dak@gnu.org> (David Kastrup's message of "Tue, 6 Aug 2013 15:44:08 +0200") Message-ID: <87a9kuv5lp.fsf@tines.lan> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 15033-done Cc: 15033-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) David Kastrup writes: > Symbols printed with `#{...#}' notation need to double backslashes when > displaying as they serve as escape characters when reading. The > behavior before this patch is clearly erroneous: > > GNU Guile 2.0.7 > [...] > scheme@(guile-user)> (string->symbol "\\(") > $1 = #{\\x28;}# > scheme@(guile-user)> (symbol->string '#{\\x28;}#) > $2 = "\\x28;" > --- > libguile/print.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/libguile/print.c b/libguile/print.c > index 50f5a3e..bb7fd84 100644 > --- a/libguile/print.c > +++ b/libguile/print.c > @@ -448,7 +448,8 @@ print_extended_symbol (SCM sym, SCM port) > SUBSEQUENT_IDENTIFIER_MASK > | UC_CATEGORY_MASK_Zs)) > { > - if (!display_character (c, port, strategy)) > + if (!display_character (c, port, strategy) > + || (c == '\\' && !display_character (c, port, strategy))) > scm_encoding_error ("print_extended_symbol", errno, > "cannot convert to output locale", > port, SCM_MAKE_CHAR (c)); Applied in b4a099883d20d7852c95acf07ab6cbc56bce18c4. Thanks! Mark From unknown Sun Jun 15 08:04:21 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 04 Sep 2013 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator