GNU bug report logs - #12459
Strange issue with circular dependancies

Previous Next

Package: guile;

Reported by: rixed <at> happyleptic.org

Date: Mon, 17 Sep 2012 11:50:01 UTC

Severity: normal

Done: ludo <at> gnu.org (Ludovic Courtès)

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 12459 in the body.
You can then email your comments to 12459 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#12459; Package guile. (Mon, 17 Sep 2012 11:50:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to rixed <at> happyleptic.org:
New bug report received and forwarded. Copy sent to bug-guile <at> gnu.org. (Mon, 17 Sep 2012 11:50:02 GMT) Full text and rfc822 format available.

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

From: rixed <at> happyleptic.org
To: bug-guile <at> gnu.org
Subject: Strange issue with circular dependancies
Date: Mon, 17 Sep 2012 13:48:08 +0200
[Message part 1 (text/plain, inline)]
While the compiler does manage most circular dependancies, some cases still
cannot be compiled.

For instance, with the attached circ-{a,b,c}.scm the compilation of b fails
with:

% GUILE_LOAD_PATH=. guile-tools compile -Warity-mismatch -Wformat -Wunused-variable -Wduplicate-case-datum -Wbad-case-datum -o circ-b.go circ-b.scm
Backtrace:
In ice-9/boot-9.scm:
2131: 19 [save-module-excursion #<procedure 2648a80 at ice-9/boot-9.scm:2787:17 ()>]
2797: 18 [#<procedure 2648a80 at ice-9/boot-9.scm:2787:17 ()>]
In unknown file:
   ?: 17 [primitive-load-path "circ-a" #f]
In ice-9/eval.scm:
 487: 16 [#<procedure 210ac60 at ice-9/eval.scm:481:4 (exp)> (use-modules # #)]
In ice-9/psyntax.scm:
1091: 15 [expand-top-sequence ((use-modules (circ-b) (circ-c))) () ...]
 976: 14 [scan ((use-modules (circ-b) (circ-c))) () ...]
 270: 13 [scan ((# #) #(syntax-object *unspecified* # #)) () (()) ...]
In ice-9/boot-9.scm:
3258: 12 [process-use-modules (((circ-b)) ((circ-c)))]
 621: 11 [map #<procedure 21d8fe0 at ice-9/boot-9.scm:3258:25 (mif-args)> ((#) (#))]
3259: 10 [#<procedure 21d8fe0 at ice-9/boot-9.scm:3258:25 (mif-args)> ((circ-c))]
2594: 9 [resolve-interface (circ-c) #:select ...]
2519: 8 [#<procedure 21cb760 at ice-9/boot-9.scm:2507:4 (name #:optional autoload version #:key ensure)> # ...]
2786: 7 [try-module-autoload (circ-c) #f]
2131: 6 [save-module-excursion #<procedure 26507b0 at ice-9/boot-9.scm:2787:17 ()>]
2797: 5 [#<procedure 26507b0 at ice-9/boot-9.scm:2787:17 ()>]
In unknown file:
   ?: 4 [primitive-load-path "circ-c" #f]
In ice-9/eval.scm:
 435: 3 [eval #<memoized (define y (@ (circ-b) fb))> ()]
 432: 2 [eval #<memoized (@ (circ-b) fb)> ()]
In unknown file:
   ?: 1 [memoize-variable-access! #<memoized (@ (circ-b) fb)> #f]
In ice-9/boot-9.scm:
 106: 0 [#<procedure 23e9100 at ice-9/boot-9.scm:97:6 (thrown-k . args)> unbound-variable ...]

ice-9/boot-9.scm:106:20: In procedure #<procedure 23e9100 at ice-9/boot-9.scm:97:6 (thrown-k . args)>:
ice-9/boot-9.scm:106:20: In procedure module-lookup: Unbound variable: fb

Note that it compiles if you remove (circ-c) from used-modules in circ-a.scm.

[circ-a.scm (text/plain, attachment)]
[circ-b.scm (text/plain, attachment)]
[circ-c.scm (text/plain, attachment)]

Information forwarded to bug-guile <at> gnu.org:
bug#12459; Package guile. (Fri, 23 Nov 2012 22:47:02 GMT) Full text and rfc822 format available.

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

From: ludo <at> gnu.org (Ludovic Courtès)
To: rixed <at> happyleptic.org
Cc: 12459 <at> debbugs.gnu.org
Subject: Re: bug#12459: Strange issue with circular dependancies
Date: Fri, 23 Nov 2012 23:44:49 +0100
Hi,

rixed <at> happyleptic.org skribis:

> While the compiler does manage most circular dependancies, some cases still
> cannot be compiled.

It’s really not supposed to work, neither at compile time nor at run time.

Sometimes it turns out to work “by chance” as in this case, or because
there are autoloads to defer the cycle.  But in general, it should
really be avoided.

Won’t fix?  :-)

Ludo’.




Information forwarded to bug-guile <at> gnu.org:
bug#12459; Package guile. (Mon, 26 Nov 2012 08:57:01 GMT) Full text and rfc822 format available.

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

From: rixed <at> happyleptic.org
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 12459 <at> debbugs.gnu.org
Subject: Re: bug#12459: Strange issue with circular dependancies
Date: Mon, 26 Nov 2012 09:54:19 +0100
> Won???t fix?  :-)

Fine with me.
I couldn't name a single compiler that can handle circular dependancies.




Reply sent to ludo <at> gnu.org (Ludovic Courtès):
You have taken responsibility. (Tue, 27 Nov 2012 21:41:01 GMT) Full text and rfc822 format available.

Notification sent to rixed <at> happyleptic.org:
bug acknowledged by developer. (Tue, 27 Nov 2012 21:41:02 GMT) Full text and rfc822 format available.

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

From: ludo <at> gnu.org (Ludovic Courtès)
To: 12459-done <at> debbugs.gnu.org
Cc: rixed <at> happyleptic.org
Subject: Re: bug#12459: Strange issue with circular dependancies
Date: Tue, 27 Nov 2012 22:38:20 +0100
tags 12459 wontfix
thanks




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 26 Dec 2012 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 12 years and 235 days ago.

Previous Next


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