From: Christian Bauer Date: Thu, 20 Feb 2003 21:33:12 +0000 (+0000) Subject: synced to 1.0 X-Git-Tag: release_1-1-0~23 X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?a=commitdiff_plain;h=8dee2c180fb2bb14ca0d309035e8baadc65b3712;p=ginac.git synced to 1.0 --- diff --git a/ginac/function.pl b/ginac/function.pl index bafd9a8d..fd0bc190 100755 --- a/ginac/function.pl +++ b/ginac/function.pl @@ -776,28 +776,31 @@ ex function::evalf(int level) const { GINAC_ASSERT(serialevalf(level)); - ++it; + --level; + exvector::const_iterator it = seq.begin(), itend = seq.end(); + while (it != itend) { + eseq.push_back(it->evalf(level)); + ++it; + } } - - if (registered_functions()[serial].evalf_f==0) { + + if (opt.evalf_f==0) { return function(serial,eseq).hold(); } current_serial = serial; - if (registered_functions()[serial].evalf_use_exvector_args) - return ((evalf_funcp_exvector)(registered_functions()[serial].evalf_f))(seq); - switch (registered_functions()[serial].nparams) { + if (opt.evalf_use_exvector_args) + return ((evalf_funcp_exvector)(opt.evalf_f))(seq); + switch (opt.nparams) { // the following lines have been generated for max. ${maxargs} parameters ${evalf_switch_statement} // end of generated lines