Greetings, and thanks so much for pursuing this! Faré <fah...@gmail.com> writes:
> Dear Camm, > >>> (declaim (ftype function ensure-exported)) >> >> Why do you think this is legal from the following page from the spec? I >> think you mean either (declaim (type function ensure-exported)) or >> (declaim (function ensure-exported)). >> > Well, I expect declaim type would associate a type > to the *variable* named ensure-exported, not to the function of the same name. > That is true, and is what I assumed you intended. Since that is not the case, please see below. >> 3.8.23 ftype >> [Declaration] >>[...] >> Specifies that the functions named by function-names are of the >> functional type type. >> > I don't see anything in http://clhs.lisp.se/Body/d_ftype.htm > that suggests function is an invalid type, as opposed to > (function (&rest t) &rest t) > It just says type, and as far as I can tell, all the implementations agree > that > function is a valid type for functions (indeed, the most general type > that covers > all functions, even including funcallable objects) It does indeed fail to define 'type' precisely, but all the examples are of the (function (&rest t) t) variety, and from the context, as we are describing a function binding of a symbol, it would clearly be inadmissible to do (declaim (ftype cons foo)), so (declaim (ftype function foo)) is at best a no-op. I suppose we could let it pass, but it has no content AFAICS. (OK, so I'm reading the spec more closely, and it does say type is a subtype of function. So I've committed a patch to let the no-op declaim pass. Clisp, perhaps the most compliant free option out there, seems to allow anything after ftype. It seems that as of now we are closer to sbcl here.) > > > OK, after compiling an ansi gcl the way you suggested, > trying to load asdf as a lisp file works — that's good. > But compiling it fails. > > I invoke GCL with: > gcl -eval '(compile-file "/home/tunes/cl/asdf/build/asdf.lisp" :print > t :verbose t)' > > The last things in the output log as I is > ; (PROGN (DEFPACKAGE :ASDF/FOOTER ...) ...) is being compiled. > ; (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL ...) ...) is being compiled. > ; (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL ...)) is being compiled. > ; (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL ...) ...) is being compiled. > ;; End of Pass 1. > ; (DEFUN ASDF/COMPONENT:SUB-COMPONENTS) is being compiled. > ;;; A bug was found in the compiler. Contact Taiichi. > Thank you for this report! This should be fixed now. I've cloned your source and loaded and compiled successfully. Take care, -- Camm Maguire c...@maguirefamily.org ========================================================================== "The earth is but one country, and mankind its citizens." -- Baha'u'llah _______________________________________________ Gcl-devel mailing list Gcl-devel@gnu.org https://lists.gnu.org/mailman/listinfo/gcl-devel