Attached input file generates problems for some newer version of maxima in ubuntu/debian. The input is generated by my program.
5.13.0-3.1+b1 (from debian lenny/amd64)
Works fine
5.17.1-1 (from debian squeeze/amd64)
Works fine
5.17.1-1ubuntu1 (from ubuntu karmic/amd64)
Seg Fault, no error reported
$ maxima < maxima.input > /dev/null
zsh: segmentation fault maxima < maxima.input > /dev/null
5.20.1-3 (from debian sid/amd64)
Abort(), following error reported:
$ maxima < maxima.input | tail
(%i26) (%o26) [_r1_x >= 0]
(%i27) (%o27) [n >= _r1_x]
(%i28) (%o28) [equal(i, _r1_x)]
(%i29) (%o29) true
(%i30) (%o30) true
(%i31)
Maxima encountered a Lisp error:
Unrecoverable error: value stack overflow.
zsh: abort maxima < maxima.input |
zsh: done tail
Input commands needed to generate the crash
The input file has 1093 lines. I do not know what the file is supposed to do. A lot of lines are redundant. Nevertheless, I have worked out a simple example which shows a Maxima problem and is part of the example file:
(%i1) assume(equal(x,i));
(%o1) [equal(x, i)]
(%i2) diff(x+1,x);
INFO: Control stack guard page reprotected
Observed with Maxima 5.20post and SBCL 1.0.29.
Dieter Kaiser
I have found the bug and I have introduced it with the extension to look at integer facts into the database.
The routines maxima-integerp and check-integer-facts call each other. I have not build in code to avoid an endless recursion for the situation that two symbols are assumed to be equal, but have no further properties. I will correct it as soon as possible.
Dieter Kaiser
Thank you for the quick reply Dieter Kaiser.
[QUOTE]
The input file has 1093 lines. I do not know what the file is supposed to
do. A lot of lines are redundant.
[/QUOTE]
In isolation, the file may look a bit silly and redundant. It is a log of communication between my compiler and maxima. The outputs are parsed and used to understand and manipulate affine coordinates during program compilation. Currently we need to ask our users/developers to downgrade maxima in order to get our compiler working. If curios, more info on can be found here: (We haven't released code yet, but hope to soon)
http://projects.csail.mit.edu/petabricks/
Thanks again,
--Jason
Fixed in compar.lisp revision 1.65.
Closing this bug report as fixed.
Dieter Kaiser