}
/* set arguments */
+ VERBOSE (DEBUG, fprintf (stdout, "1 arg[0]: %g\n", get_tab (argument, 1)));
tab_t *old_argument = copy_tab (argument);
/* backup context */
workspace_t *tmp = backup_ws (alloc_ws ());
restore_ws (programs[n]);
+ VERBOSE (DEBUG, fprintf (stdout, "2 arg[0]: %g\n", get_tab (argument, 1)));
/* set arguments */
argument = def (nbargs, args);
+ VERBOSE (DEBUG, fprintf (stdout, "3 arg[0]: %g\n", get_tab (argument, 1)));
/* evaluate program */
answer = 0;
element_t *elements = dupelement (programs[n]->root);
+ VERBOSE (DEBUG, fprintf (stdout, "4 arg[0]: %g\n", get_tab (argument, 1)));
ret = evaluate_element (elements, 0);
VERBOSE (DEBUG, fprintf (stdout, "ret; %g\n", ret));
+ VERBOSE (DEBUG, fprintf (stdout, "5 arg[0]: %g\n", get_tab (argument, 1)));
delelement (elements);
/* restore context */
backup_ws (programs[n]);
restore_ws (tmp);
free_ws (tmp);
+ VERBOSE (DEBUG, fprintf (stdout, "6 arg[0]: %g\n", get_tab (argument, 1)));
/* clean arguments */
free_tab (argument);
argument = old_argument;
+ VERBOSE (DEBUG, fprintf (stdout, "7 arg[0]: %g\n", get_tab (argument, 1)));
return ret;
}