From unknown Sun Jun 15 08:40:58 2025 X-Loop: help-debbugs@gnu.org Subject: bug#15033: [PATCH] Fix display of symbols containing backslashes Resent-From: David Kastrup Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Tue, 06 Aug 2013 13:45:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 15033 X-GNU-PR-Package: guile X-GNU-PR-Keywords: patch To: 15033@debbugs.gnu.org Cc: David Kastrup X-Debbugs-Original-To: bug-guile@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.137579669316211 (code B ref -1); Tue, 06 Aug 2013 13:45:02 +0000 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 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-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 unknown Sun Jun 15 08:40:58 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.503 (Entity 5.503) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: David Kastrup Subject: bug#15033: closed (Re: bug#15033: [PATCH] Fix display of symbols containing backslashes) Message-ID: References: <87a9kuv5lp.fsf@tines.lan> <1375796648-5517-1-git-send-email-dak@gnu.org> X-Gnu-PR-Message: they-closed 15033 X-Gnu-PR-Package: guile X-Gnu-PR-Keywords: patch Reply-To: 15033@debbugs.gnu.org Date: Tue, 06 Aug 2013 22:05:03 +0000 Content-Type: multipart/mixed; boundary="----------=_1375826703-32142-1" This is a multi-part message in MIME format... ------------=_1375826703-32142-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #15033: [PATCH] Fix display of symbols containing backslashes which was filed against the guile package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 15033@debbugs.gnu.org. --=20 15033: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D15033 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1375826703-32142-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit 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 ------------=_1375826703-32142-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit 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 ------------=_1375826703-32142-1--