Re: GCL pathname bug

Leo Butler <[email protected]> Mon, 2 Mar 2026 18:53:38 +0000
Newsgroups gmane.comp.mathematics.maxima.general,gmane.lisp.gcl.devel
Message-ID <[email protected]>
Hello again,

I wrote too soon. While the patch enables the build process, there is a
problem with the testsuite (I re-ran the failure by itself):

#+begin_example
*************************** rtest15.mac: Problem 274 **************************

Input:
errcatch(push(2014))

Unrecoverable error: Segmentation violation..
Aborted                    ../maxima-local --lisp=gcl --batch-string='batch("rtest15.mac",test);'
#+end_example

On the other hand, Maxima installed from debian testing does complete
that test (albeit with 29 non-fatal errors).

Best regards,
Leo

On Mon, Mar 02 2026, Camm Maguire <[email protected]> wrote:

> Greetings, and thanks so much for your report!  I see you are using
> 2.6.14, and I apologize for having focused solely on current 2.7.1 and
> forthcoming 2.7.2.  I do want to support the 2.6 series builds for at
> least a while longer, so I appreciate the report.
>
> This patch should fix things for you.  I will be releasing this as a
> Debian package, and a final 2.6.15 to end the 2.6 series relatively
> soon.
>
> Take care,
>
> =============================================================================
> (in-package :compiler)
> (defun c2gethash (args)
>   (cond ((member *value-to-go* '(top return))
> 	 (let* ((nargs (inline-args args '(t t t)))
> 		(base *vs*)(*vs* *vs*)
> 		(r (cdr (vs-push)))(f (cdr (vs-push))))
> 	   (wt-nl "{ struct htent *_z=gethash" (if *safe-compile* "_with_check" "") "(" (car nargs) "," (cadr nargs) ");")
> 	   (wt-nl "if (_z->hte_key==OBJNULL) {")
> 	   (wt-nl "base[" r "]=" (caddr nargs) ";")
> 	   (wt-nl "base[" f "]=Cnil;")
> 	   (wt-nl "} else {")
> 	   (wt-nl "base[" r "]=_z->hte_value;")
> 	   (wt-nl "base[" f "]=Ct;")
> 	   (wt-nl "}}")
> 	   (wt-nl "vs_top=(vs_base=base+" base ")+" (- *vs* base) ";")
> 	   (unwind-exit 'fun-val nil (cons 'values 2))
> 	   (close-inline-blocks)))
> 	((let ((*inline-blocks* 0)
> 	       (*restore-avma*  *restore-avma*)
> 	       (fd `((t t t) t #.(flags rfa) 
> 		     ,(concatenate 'string
> 				   "({struct htent *_z=gethash"
> 				   (if *safe-compile* "_with_check" "")
> 				   "(#0,#1);_z->hte_key==OBJNULL ? (#2) : _z->hte_value;})")))) 
> 	   (save-avma fd)
> 	   (unwind-exit (get-inline-loc fd args))
> 	   (close-inline-blocks)))))
> =============================================================================           
>
> Leo Butler <[email protected]> writes:
>
>> Camm,
>>
>> Attached is the complete output from an attempt to build Maxima with 4
>> lisps from this morning.
>>
>> At line 28291, you will see the initial error that I posted. There are,
>> I believe, several thousand lines of repetitive errors/warnings above
>> that.
>>
>> Best regards,
>> Leo
>>
>>
>>

-- 
---
Best regards,
Dr Butler