GNU bug report logs - #24320
Error when printing foreign functions

Previous Next

Package: guile;

Reported by: Robin Templeton <robin <at> terpri.org>

Date: Sat, 27 Aug 2016 19:01:01 UTC

Severity: normal

Done: Robin Templeton <robin <at> terpri.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 24320 in the body.
You can then email your comments to 24320 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guile <at> gnu.org:
bug#24320; Package guile. (Sat, 27 Aug 2016 19:01:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Robin Templeton <robin <at> terpri.org>:
New bug report received and forwarded. Copy sent to bug-guile <at> gnu.org. (Sat, 27 Aug 2016 19:01:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Robin Templeton <robin <at> terpri.org>
To: bug-guile <at> gnu.org
Subject: Error when printing foreign functions
Date: Sat, 27 Aug 2016 14:05:25 -0400
The following program causes `(@ (system vm program) print-program)' to
throw an exception when run in Guile 2.1.3.104-8f2f8:

(use-modules (system foreign))
(format #t "~S~%"
 (pointer->procedure double
                     (dynamic-func "sqrt" (dynamic-link))
                     (list double)))

print-program tries to access fields of the procedure's debug info
record even if find-program-debug-info fails and returns #f. The
following patch fixes the problem.

From 0ec7bff9e71f1c1c46fa3c1d2bdbc43f5db3588c Mon Sep 17 00:00:00 2001
From: Robin Templeton <robin <at> terpri.org>
Date: Sat, 27 Aug 2016 13:42:10 -0400
Subject: [PATCH] Check for missing debug info in print-program

* module/system/vm/program.scm (print-program): Check the return value
  of find-program-debug-info.
---
 module/system/vm/program.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/module/system/vm/program.scm b/module/system/vm/program.scm
index 9f5b764..32c96f2 100644
--- a/module/system/vm/program.scm
+++ b/module/system/vm/program.scm
@@ -265,7 +265,7 @@ lists."
          ;; It could be the procedure had its name property set via the
          ;; procedure property interface.
          (name (or (and program (procedure-name program))
-                   (program-debug-info-name pdi)))
+                   (and pdi (program-debug-info-name pdi))))
          (source (match (find-program-sources addr)
                    (() #f)
                    ((source . _) source)))
-- 
2.9.3






Information forwarded to bug-guile <at> gnu.org:
bug#24320; Package guile. (Fri, 02 Sep 2016 08:09:02 GMT) Full text and rfc822 format available.

Message #8 received at 24320 <at> debbugs.gnu.org (full text, mbox):

From: Andy Wingo <wingo <at> pobox.com>
To: Robin Templeton <robin <at> terpri.org>
Cc: 24320 <at> debbugs.gnu.org
Subject: Re: bug#24320: Error when printing foreign functions
Date: Fri, 02 Sep 2016 10:08:17 +0200
On Sat 27 Aug 2016 20:05, Robin Templeton <robin <at> terpri.org> writes:

> The following program causes `(@ (system vm program) print-program)' to
> throw an exception when run in Guile 2.1.3.104-8f2f8:

LGTM, please apply!  I think you have the permissions to push to master;
let me know if that's not the case.

Andy




Reply sent to Robin Templeton <robin <at> terpri.org>:
You have taken responsibility. (Sat, 03 Sep 2016 01:39:02 GMT) Full text and rfc822 format available.

Notification sent to Robin Templeton <robin <at> terpri.org>:
bug acknowledged by developer. (Sat, 03 Sep 2016 01:39:02 GMT) Full text and rfc822 format available.

Message #13 received at 24320-done <at> debbugs.gnu.org (full text, mbox):

From: Robin Templeton <robin <at> terpri.org>
To: Andy Wingo <wingo <at> pobox.com>
Cc: 24320-done <at> debbugs.gnu.org
Subject: Re: bug#24320: Error when printing foreign functions
Date: Fri, 02 Sep 2016 21:38:06 -0400
Andy Wingo <wingo <at> pobox.com> writes:

> On Sat 27 Aug 2016 20:05, Robin Templeton <robin <at> terpri.org> writes:
>
>> The following program causes `(@ (system vm program) print-program)' to
>> throw an exception when run in Guile 2.1.3.104-8f2f8:
>
> LGTM, please apply!

Thanks, now fixed in master

-- 
Inteligenta persono lernas la lingvon Esperanton rapide kaj facile.
Esperanto estas moderna, kultura lingvo por la mondo. Simpla, fleksebla,
belsona, Esperanto estas la praktika solvo de la problemo de universala
interkompreno. Lernu la interlingvon Esperanton!




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 01 Oct 2016 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 8 years and 259 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.