From: dpvc v. a. <we...@ma...> - 2005-10-10 23:41:26
|
Log Message: ----------- If constant functions are not being reduced, don't mark the function call as constant (since otherwise it might be evaluated later accidentally). Modified Files: -------------- pg/lib/Parser: Function.pm Revision Data ------------- Index: Function.pm =================================================================== RCS file: /webwork/cvs/system/pg/lib/Parser/Function.pm,v retrieving revision 1.17 retrieving revision 1.18 diff -Llib/Parser/Function.pm -Llib/Parser/Function.pm -u -r1.17 -r1.18 --- lib/Parser/Function.pm +++ lib/Parser/Function.pm @@ -21,8 +21,9 @@ }, $def->{class}; $fn->{isConstant} = $constant; $fn->_check; - $fn = $context->{parser}{Value}->new($equation,[$fn->eval]) + return $context->{parser}{Value}->new($equation,[$fn->eval]) if $constant && $context->flag('reduceConstantFunctions'); + $fn->{isConstant} = 0; return $fn; } @@ -79,6 +80,7 @@ {$x = $x->substitute; $constant = 0 unless $x->{isConstant}} return $context->{parser}{Value}->new($equation,[$self->eval]) if $constant && $context->flag('reduceConstantFunctions'); + $self->{isConstant} = 0; return $self; } |