server.lisp and GCL



Greetings!

Can't reproduce this with latest 2.6.1 ANSI (presuming that is what
you are using:

(defun foo ()
  (handler-case
      nil
    ((or type-error parse-error) () nil)))


FOO

>(foo)

NIL

>(compile 'foo)

Compiling gazonk0.lsp.
; (DEFUN FOO ...) is being compiled.
;; Warning: The variable CONDITIONS::TEMP is not used.
End of Pass 1.  
End of Pass 2.  
OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
Finished compiling gazonk0.lsp.
Loading gazonk0.o
start address -T 0x85b1620 Finished loading gazonk0.o
#<compiled-function FOO>

>(foo)

NIL

>


Take care,

Wolfgang Jenkner <wjenkner@inode.at> writes:

> "Vadim V. Zhytnikov" <vvzhy@mail.ru> writes:
> 
> [GCL compiling getpid-from-environment in src/server.lisp] 
> > Something weird is going on.  Yes, I also can compile
> > server.lisp this way.  But if I try to build maxima from
> > scratch I get:
> 
> Different (DECLAIM (OPTIMIZE ...)) settings, perhaps?
> 
> > ; (DEFUN GETPID-FROM-ENVIRONMENT ...) is being compiled.
> > ;;; The function (OR TYPE-ERROR PARSE-ERROR) is illegal.
> > No FASL generated.
> 
> Apparently, the GCL compiler does not recognise (OR TYPE-ERROR
> PARSE-ERROR) as a typespec in this context.  In any case, currently
> only CLISP under a non unix operating system has use for this
> function, so I'll just #-gcl it (I don't #+clisp it because it's nice
> to test things on as many lisp systems as possible, isn't it ;-)
> 
> A stripped down test case could be
> 
> (defun foo ()
>   (handler-case
>       nil
>     ((or type-error parse-error) () nil)))
> 
> Wolfgang
> 
> 
> 

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