axiom-developer
[Top][All Lists]
Advanced

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

[Axiom-developer] patch to daase (probe-file)


From: Vanuxem Grégory
Subject: [Axiom-developer] patch to daase (probe-file)
Date: Thu, 28 Sep 2006 17:45:08 +0200

Bill Page wrote:

[...]

> The most serious and difficult problem occurred in Axiom's database 
> code. There is some incorrect usage of the lisp 'probe-file'
> function that no longer corresponds the way 'probe-file' works
> in gcl (since gcl-2.6.7). This is actually a bug in the current
> Axiom linux source distribution as well! This might explain the
> problems that we had recently with trying to compile Martin's
> Rubey's new 'guess' package since it means that generating the
> new databases might fail.

[...]

> This patch corrects some incorrect usage of 'probe-file' in the 
> Axiom database code. !! Very important !!

> diff -rN -u old-axiom--windows--1-1/src/interp/daase.lisp.pamphlet
> new-axiom--windows--1-1/src/interp/daase.lisp.pamphlet
> --- old-axiom--windows--1-1/src/interp/daase.lisp.pamphlet      Wed Sep
> 20 21:32:48 2006
> +++ new-axiom--windows--1-1/src/interp/daase.lisp.pamphlet      Wed Sep
> 20 21:33:06 2006
> @@ -840,7 +840,7 @@
>   (let (thisdir nrlibs asos asys libs object only dir key 
>        (|$forceDatabaseUpdate| t) noexpose)
>    (declare (special |$forceDatabaseUpdate|))
> -  (setq thisdir (namestring (probe-file ".")))
> +  (setq thisdir (namestring (truename ".")))
>    (setq noexpose nil)
>    (multiple-value-setq (only dir noexpose) (processOptions options))
>       ;don't force exposure during database build

Already applied in Gold and build-improvements

> @@ -1106,12 +1106,12 @@
>    (setq *compressvector* nil)
>    (withSpecialConstructors)
>    (localdatabase nil
> -     (list (list '|dir| (namestring (probe-file "./")) ))
> +     (list (list '|dir| (namestring (truename "./")) ))
>       'make-database)

Already applied in Gold and build-improvements

>    (dolist (dir dirlist)
>           (localdatabase nil 
>                          (list (list '|dir| 
> -                                    (namestring (probe-file 
> +                                    (namestring (truename 
>                                                   (format nil "./~a" 
>                                                           dir)))))
>                          'make-database))

Not applied. Is it necessary (I do not have time to look at it) ?
It seems to me if 'dir' is a directory. Bill, or any other, do you
know how we can trigger this bug (in the interpreter for example)?

Greg





reply via email to

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