Re: Another spurious compilation diagnostic?
Steven Edwards <[email protected]>
| Newsgroups | gmane.lisp.cmucl.general |
|---|---|
| Message-ID | <[email protected]> |
This might help: The problem occurs when the (list-length foobar) expression appears as the right hand side of a variable binding in a let* list. A perhaps related spurious diagnostic also appears in the same let* context (but in different lets): ; (WHEN INLINE-FLAG ; (FETCH-DIR PAS-KING-SQ FR-SQ)) ; --> COND IF ; ==> ; (COND) ; Warning: This is not a (VALUES &OPTIONAL (MOD 536870911) &REST T): ; NIL ; ; [Last message occurs 2 times] The above COND IF NIL stuff must be from a cmucl macro expansion as it's not in the user source. I note that the resulting compiled object code for all of the spurious warning cases runs fine as does the interpreted code version. Same for the clisp and gcl processors. == Steven On Sep 22, 2008, at 7:58 PM, Raymond Toy wrote: > Steven Edwards wrote: >> Greetings again, list readers: >> >> It seems that every time I compile something like: >> >> (list-length some-random-list) >> >> I get a compiler warning: >> >> ; (LIST-LENGTH SOME-RANDOM-LIST) >> ; --> BLOCK DO BLOCK LET TAGBODY WHEN COND IF PROGN RETURN >> ; ==> >> ; (RETURN-FROM NIL NIL) >> ; Warning: This is not a (VALUES &OPTIONAL REAL &REST T): >> ; NIL >> ; ; [Last message occurs 2 times] >> >> Any ideas? >> > I can't reproduce this. What version of cmucl? Can you provide a > complete example that shows this? > > Thanks, > > Ray