#1697 list function arguments with mode_declare in translate

closed
nobody
5
2009-12-19
2009-06-19
No

(%i128) build_info()$
Maxima version: 5.18.1
Maxima build date: 0:54 5/10/2009
host type: i686-pc-linux-gnu
lisp-implementation-type: CLISP
lisp-implementation-version: 2.42 (2007-10-16) (built 3403310376) (memory 3450873281)

Translated function who has list argument with mode_declare(completearray ) does not wok.

% wf(v):=block(mode_declare(completearray(v[2] ),float),return(v[1]+v[2]))

Before translate it works
%wf([1,2]) /* -> 3 */

But after translate
%translate(wf)
%wf([1,2])
Maxima encountered a Lisp error:
EVAL: undefined function $V
Automatically continuing.
To reenable the Lisp debugger set *debugger-hook* to nil.

In the translated code,

%compfile("tmp.lisp",wf)
$ more tmp.lisp
...
RETURN (+ ($V 1 ) ($V 2)
...

$V is dealed as function.

Discussion

  • I checked Maxima version:5.20.1 , this bug still remain.

     
  • Fixed in trans2.lisp cvs rev. 1.14.

     
    • status: open --> closed