Re: [Maxima-discuss] GCL pathname bug

Leo Butler <[email protected]> Tue, 10 Mar 2026 15:37:18 -0500
Newsgroups gmane.lisp.gcl.devel,gmane.comp.mathematics.maxima.general
Message-ID <[email protected]>
Hello Camm,

It may be a bug in Maxima, but look at the output I sent:

>> errcatch(push(2014))
>>
>> Unrecoverable error: Segmentation violation..
   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
That is a GCL bug.

Best regards,
Leo


On Tue, Mar 03 2026, Camm Maguire <[email protected]> wrote:

> Greetings!  This one is a maxima bug -- wna-err should read
>
> (defun wna-err (exprs &optional required-arg-count pretty-name)
>   (if required-arg-count
>       (let* ((op (or pretty-name (caar exprs)))
> 	     (actual-count (length (rest exprs))))
> 	(merror (intl:gettext "~M: expected exactly ~M arguments but got ~M: ~M")
> 		op required-arg-count actual-count (list* '(mlist) (rest exprs))))
>       (merror (intl:gettext "~:@M: wrong number of arguments.")
> 	      exprs)))
>
> if it is to accespt a symbol in exprs.  With this, gcl 2.6 gives the
> following testsuite results:
>
> Error summary:
> Error(s) found:
>   /home/camm/maxima-5.49.0+dsfg/tests/rtest5.mac problems:
>     (80 82 83)
>   /home/camm/maxima-5.49.0+dsfg/share/stringproc/rtestprintf.mac problems:
>     (29 48)
>   /home/camm/maxima-5.49.0+dsfg/share/to_poly_solve/rtest_to_poly_solve.mac problem:
>     (212)
> Tests that were expected to fail but passed:
>   /home/camm/maxima-5.49.0+dsfg/share/simplification/rtest_facexp.mac problem:
>     (37)
> 6 tests failed out of 19,396 total tests.
> real time       :    950.600 secs
> run-gbc time    :    253.150 secs
> child run time  :    393.750 secs
> gbc time        :    289.790 secs
> (%o0)                                done
>
> Take care,
>
>
>
> Leo Butler <[email protected]> writes:
>
>> 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
>>>>
>>>>
>>>>