gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gcl-devel] Re: specious warning?


From: Camm Maguire
Subject: [Gcl-devel] Re: specious warning?
Date: 15 Mar 2006 22:21:58 -0500
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings!  The compiler currently wraps (and always has wrapped) the
branching form in a (the boolean ..) to make use of o\inline
optimizers in gcl_cmpopt.lsp which require a boolean result.  With the
more complete type system, boolean is mow `(member t nil), which does
not intersect with the return type of list.  The wrapping/optimizer
relationships need to be rethought now.

Take care,

Robert Boyer <address@hidden> writes:

> This new compiler warning in very old code is suspicious.  Could be a new,
> overly zealous type inference!
> 
> Bob
> 
> % xg
> GCL (GNU Common Lisp)  2.7.0 ANSI    Mar 15 2006 18:07:14
> Source License: LGPL(gcl,gmp,pargcl), GPL(unexec,bfd)
> Binary License:  GPL due to GPL'ed components: (BFD UNEXEC)
> Modifications of this banner must retain notice of a compatible license
> Dedicated to the memory of W. Schelter
> 
> Use (help) to get some basic information on how to use GCL.
> Temporary directory for compiler files set to /tmp/
> 
> >(DEFUN FOO () (LET (I (LIS1 (NREVERSE (GET-STACK-NAME1 NIL))))
>   (LET (COLL1 POIN1 VAL1)
>     (MACROLET
>         ((SLOCAL-FINISH NIL (LIST 'GO 'SCFINISH-LOOP))
>          (SLOOP-FINISH NIL (LIST 'GO 'SCFINISH-LOOP))
>          (SLOOP-RETURN (&REST SCVALS)
>              (LIST 'RETURN-FROM 'NIL (LIST* 'VALUES SCVALS))))
>       (BLOCK ()
>         (TAGBODY
>           SCNEXT-LOOP
>           (AND (NULL LIS1) (SLOCAL-FINISH))
>           (SCDESETQ I (CAR LIS1))
>           (SETF VAL1 (LIST '|.| I))
>           (COND
>             (POIN1
>                 (AND (SETF (CDR POIN1) VAL1)
>                      (SETF POIN1 (LAST (CDR POIN1)))))
>             (T (SETF POIN1 (LAST (SETF COLL1 VAL1)))))
>           (SETF LIS1 (CDR LIS1))
>           (GO SCNEXT-LOOP)
>           SCFINISH-LOOP
>           (RETURN-FROM () COLL1)
>           (SLOOP-RETURN NIL)))))))
> 
> FOO
> 
> >(compile *)
> 
> ;; Compiling /tmp/gazonk_17844_0.lsp.
> ; (DEFUN FOO ...) is being compiled.
> ;; Warning: Type mismatch was found in (THE BOOLEAN
>                                          (SETF (CDR POIN1) VAL1)).
> ;; Warning: Type mismatch was found in (THE BOOLEAN
>                                          (SETF (CDR POIN1) VAL1)).
> ;; End of Pass 1.  
> ;; End of Pass 2.  
> /tmp/gazonk_17844_0.c:400: warning: `__huge_val' defined but not used
> ;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3, 
> (Debug quality ignored)
> ;; Finished compiling /tmp/gazonk_17844_0.o.
> Loading /tmp/gazonk_17844_0.o
> start address -T 0xab5ebb0 Finished loading /tmp/gazonk_17844_0.o
> #<compiled-function FOO>
> NIL
> NIL
> 
> >
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

[Prev in Thread] Current Thread [Next in Thread]