From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Zefram Newsgroups: gmane.lisp.guile.bugs Subject: bug#16357: insufficient print abbreviation in error messages Date: Sun, 5 Jan 2014 23:00:32 +0000 Message-ID: <20140105230032.GB30283@fysh.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1388967673 19123 80.91.229.3 (6 Jan 2014 00:21:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 6 Jan 2014 00:21:13 +0000 (UTC) To: 16357@debbugs.gnu.org Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Mon Jan 06 01:21:19 2014 Return-path: Envelope-to: guile-bugs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1VzxwU-0004W1-Ir for guile-bugs@m.gmane.org; Mon, 06 Jan 2014 01:21:18 +0100 Original-Received: from localhost ([::1]:59931 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzxwU-000675-4F for guile-bugs@m.gmane.org; Sun, 05 Jan 2014 19:21:18 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52044) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzxNa-0005yC-1a for bug-guile@gnu.org; Sun, 05 Jan 2014 18:45:24 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VzxNR-0002Nv-KY for bug-guile@gnu.org; Sun, 05 Jan 2014 18:45:13 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:51430) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzxNR-0002Nh-HH for bug-guile@gnu.org; Sun, 05 Jan 2014 18:45:05 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1VzxNR-00051K-8q for bug-guile@gnu.org; Sun, 05 Jan 2014 18:45:05 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Zefram Original-Sender: "Debbugs-submit" Resent-CC: bug-guile@gnu.org Resent-Date: Sun, 05 Jan 2014 23:45:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 16357 X-GNU-PR-Package: guile X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-guile@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.138896546219154 (code B ref -1); Sun, 05 Jan 2014 23:45:05 +0000 Original-Received: (at submit) by debbugs.gnu.org; 5 Jan 2014 23:44:22 +0000 Original-Received: from localhost ([127.0.0.1]:37199 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VzxMj-0004yj-7m for submit@debbugs.gnu.org; Sun, 05 Jan 2014 18:44:21 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:45100) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Vzwgj-0003lB-E0 for submit@debbugs.gnu.org; Sun, 05 Jan 2014 18:00:57 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Vzwga-00013T-Q5 for submit@debbugs.gnu.org; Sun, 05 Jan 2014 18:00:57 -0500 Original-Received: from lists.gnu.org ([2001:4830:134:3::11]:37170) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Vzwga-00013O-Nb for submit@debbugs.gnu.org; Sun, 05 Jan 2014 18:00:48 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:46809) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzwgU-0003zT-LI for bug-guile@gnu.org; Sun, 05 Jan 2014 18:00:48 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VzwgO-00012l-Lk for bug-guile@gnu.org; Sun, 05 Jan 2014 18:00:42 -0500 Original-Received: from river.fysh.org ([5.135.154.127]:53115) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VzwgO-00012g-FI for bug-guile@gnu.org; Sun, 05 Jan 2014 18:00:36 -0500 Original-Received: from zefram by river.fysh.org with local (Exim 4.80 #2 (Debian)) id 1VzwgK-0000DP-8V; Sun, 05 Jan 2014 23:00:32 +0000 Content-Disposition: inline X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Mailman-Approved-At: Sun, 05 Jan 2014 18:44:19 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-Mailman-Approved-At: Sun, 05 Jan 2014 19:21:12 -0500 X-BeenThere: bug-guile@gnu.org List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:7367 Archived-At: When guile is constructing error messages that display offending objects, in version 2.0.9 it never abbreviates long or deep structures. This can easily lead to pathologically-long messages that take stupid amounts of time and memory to construct and to display. By contrast, guile-1.8 applies abbreviation at a reasonable level, and objects appearing in stack traces have reasonable abbreviation on both versions. Two very mild examples: $ guile-1.8 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))" Backtrace: In current input: 1: 0* [read {(1 2 3 4 5 6 7 8 9 ...)}] :1:1: In procedure read in expression (read (# 100 #)): :1:1: Wrong type argument in position 1 (expecting open input port): (1 2 3 4 5 6 7 8 9 10 ...) $ guile-2.0 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))" Backtrace: In ice-9/boot-9.scm: 157: 7 [catch #t # ...] In unknown file: ?: 6 [apply-smob/1 #] In ice-9/boot-9.scm: 63: 5 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 432: 4 [eval # #] In unknown file: ?: 3 [call-with-input-string "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons n v)))))" ...] In ice-9/command-line.scm: 180: 2 [# #] In unknown file: ?: 1 [eval (read (let aaa (# #) (if # v #))) #] ?: 0 [read (1 2 3 4 5 6 7 8 9 ...)] ERROR: In procedure read: ERROR: In procedure read: Wrong type argument in position 1 (expecting open input port): (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100) $ guile-1.8 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))" Backtrace: In current input: 1: 0* [read {(((# . 3) . 2) . 1)}] :1:1: In procedure read in expression (read (# 100 #)): :1:1: Wrong type argument in position 1 (expecting open input port): (((((((# . 7) . 6) . 5) . 4) . 3) . 2) . 1) $ guile-2.0 --debug -c "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))" Backtrace: In ice-9/boot-9.scm: 157: 7 [catch #t # ...] In unknown file: ?: 6 [apply-smob/1 #] In ice-9/boot-9.scm: 63: 5 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 432: 4 [eval # #] In unknown file: ?: 3 [call-with-input-string "(read (let aaa ((n 100) (v '())) (if (= n 0) v (aaa (- n 1) (cons v n)))))" ...] In ice-9/command-line.scm: 180: 2 [# #] In unknown file: ?: 1 [eval (read (let aaa (# #) (if # v #))) #] ?: 0 [read (((# . 3) . 2) . 1)] ERROR: In procedure read: ERROR: In procedure read: Wrong type argument in position 1 (expecting open input port): ((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((() . 100) . 99) . 98) . 97) . 96) . 95) . 94) . 93) . 92) . 91) . 90) . 89) . 88) . 87) . 86) . 85) . 84) . 83) . 82) . 81) . 80) . 79) . 78) . 77) . 76) . 75) . 74) . 73) . 72) . 71) . 70) . 69) . 68) . 67) . 66) . 65) . 64) . 63) . 62) . 61) . 60) . 59) . 58) . 57) . 56) . 55) . 54) . 53) . 52) . 51) . 50) . 49) . 48) . 47) . 46) . 45) . 44) . 43) . 42) . 41) . 40) . 39) . 38) . 37) . 36) . 35) . 34) . 33) . 32) . 31) . 30) . 29) . 28) . 27) . 26) . 25) . 24) . 23) . 22) . 21) . 20) . 19) . 18) . 17) . 16) . 15) . 14) . 13) . 12) . 11) . 10) . 9) . 8) . 7) . 6) . 5) . 4) . 3) . 2) . 1) Debian incarnation of this bug report: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734128 -zefram