[Openmcl-devel] CCL fails to compile SBCL
gz at clozure.com
Mon Oct 18 12:11:34 UTC 2010
In general, ccl does warn about undefined types in declarations (whether they are defined later is irrelevant), but we've since fixed defstruct to not expand into declarations involving undefined types. So if you can use the trunk or wait for 1.6 (due soon) then you shouldn't need to adjust your code.
On Oct 18, 2010, at 4:40 AM, Nikodemus Siivola <nikodemus at random-state.net> wrote:
> On 17 October 2010 20:51, Daniel Herring <dherring at tentpost.com> wrote:
>> FYI, there is a current thread on sbcl-devel entitled
>> "build failure when bootstrapping with Clozure CL"
> Yep. There have been reports of build failures when using CCL as host,
> due to full warnings from forward references to type specifiers.
> For example, CCL's COMPILE-FILE (1.5-r13651) returns a tertiary value of T for
> (defstruct foo
> (bar (error "missing argument") :type bar))
> (defun bar-foo (bar)
> (declare (type bar bar))
> (make-foo :bar bar))
> if type BAR is not yet defined. The offending form appears to be the
> declaration in BAR-FOO. (The suboptimality of code such as this is not
> in any dispute.)
> The question is if CCL considers such forward references worth a full
> warning (and hence COMPILE-FILE returning a non-NIL tertiary value),
> or if this is unintentional?
> If the warning is here to stay, then we obviously need to adjust the
> SBCL bootstrap to suit -- but if not, I would let the sleeping
> bootstrap lie just for now...
> -- Nikodemus
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
More information about the Openmcl-devel