Greetings! Robert Boyer <[EMAIL PROTECTED]> writes:
> > What about adding the warning for (values x x) to apply > > to values-list too? > > Sorry, I don't get that question yet. > >(proclaim '(ftype (function (t) t) foo))(defun foo (x) (values x x))(compile >'foo) NIL > FOO > ;; Compiling /tmp/gazonk_31762_0.lsp. ;; End of Pass 1. ; (DEFUN FOO) is being compiled. ;; Warning: Trying to return multiple values. ;But FOO was proclaimed to have single value. ;Only first one will assured. ;; End of Pass 2. ;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3, (Debug quality ignored) ;; Finished compiling /tmp/gazonk_31762_0.o. Loading /tmp/gazonk_31762_0.o start address -T 0x884a478 Finished loading /tmp/gazonk_31762_0.o #<compiled-function FOO> NIL NIL Basically, it appears that GCL's traditional approach is to believe the proclamation and warn like above in case of conflict. We could do similarly for values-list. As your other posts indicate, this may not ultimately be permissible. It certainly does appear, though, that this situation represents an inconsistency in the evolution of lisp which the committe may have tried to resolve after the fact by effectively dumping the contenct of proclaim ftype. Take care, > > Bob > > > -- Camm Maguire [EMAIL PROTECTED] ========================================================================== "The earth is but one country, and mankind its citizens." -- Baha'u'llah _______________________________________________ Gcl-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/gcl-devel
