rk_adpative test suite failure
Fixed by [2fe665eebdef9552e98d0d298bd6b54e137219c9]
I agree that (2) is the right approach. I tried (1) and found that, in addition to the extra variable, the interpreted return throws an exception that is not caught by the compiled do. I think it is OK for now to not translate rk_adaptive. I find that it takes about 1.5x running time when not translated.
boolsimp turns off translation for conditional expressions, and anything inside them. The interpreted "return" statement checks a variable that is set by the interpreted "do" command, to check that the return is inside a do. But the translated "do" doesn't set this variable, so the interpreted "return" inside it generates an error.
The problem seems to be caused by removing property 'translate from 'mcond (in boolsimp.lisp) and then compiling a routine with return inside a conditional. Maxima branch_5_49_base_100_g7075cc379 https://maxima.sourceforge.io using Lisp SBCL 2.5.11 Distributed under the GNU Public License. See the file COPYING. Dedicated to the memory of William Schelter. The function bug_report() provides bug reporting information. (%i1) :lisp(remprop 'mcond 'translate) (TRANSLATE #<FUNCTION (LAMBDA (FORM) :IN "/home/gildea/src/maxima/src/transl.lisp")...
rk_adpative test suite failure
rk_adpative test suite failure
configure --disable-build-docs not working