[ cclan-Bugs-1027814 ] ASDF enters endless loop loading .asd

"SourceForge.net" <[email protected]> Tue, 14 Sep 2004 03:20:57 -0700
Newsgroups gmane.lisp.cclan.bugs
Message-ID <[email protected]>
Bugs item #1027814, was opened at 2004-09-14 12:20
Message generated for change (Tracker Item Submitted) made by Item Submit=
ter
You can respond by visiting:=20
https://sourceforge.net/tracker/?func=3Ddetail&atid=3D393636&aid=3D102781=
4&group_id=3D28536

Category: asdf
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: J=F6rg H=F6hle (hoehle)
Assigned to: Daniel Barlow (dan_b)
Summary: ASDF enters endless loop loading .asd

Initial Comment:
Hi,

I'm using ASDF 1.86.1 on MS-Windows and Linux, running=20
the same version of CLISP (CLISP CVS Head as of=20
13.9.2004).

I obtain infinite loops trying to load various systems.=20
This appears to happen when I modify an .asd file after=20
it has been loaded.

[147]> (asdf::find-system"clsql-odbc")

;; Loading file S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd=20
...
;;  Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
;;   Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
;;    Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
;;     Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
;;      Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...


[145]> (asdf:oos 'asdf:load-op "clsql-odbc")

; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15694>
;; Loading file S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd=20
...
; registering #<SYSTEM CLSQL-ODBC #x1A6E5AB9> as=20
CLSQL-ODBC
; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15699>
;;  Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15700>
;;   Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15701>
;;    Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15702>
;;     Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15703>
;;      Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...
; loading system definition from=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd into #<PACKAGE=20
ASDF15704>
;;       Loading file=20
S:\Code\Lisp\clsql-3.0.3\clsql-odbc.asd ...


The potential for circularity seems inside
find-system
 -> load
   -> defsystem
     -> parse-component-form nil
        -> find-component nil
           -> find-system

BTW, I believe the defsystem macro expansion should=20
only refer to *load-truename* if it's bound. Does the=20
doc state that defsytem must not be used at top-level?=20
That would be quite unusual for Lisp.
I got errors about truenames with NIL when trying to=20
provide a REPL defsystem definition.

Regards,
 J=F6rg H=F6hle

----------------------------------------------------------------------

You can respond by visiting:=20
https://sourceforge.net/tracker/?func=3Ddetail&atid=3D393636&aid=3D102781=
4&group_id=3D28536


-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.=20
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php