char *required[MAXREQ];
int nreq;
+int the_env_defined = 0;
+
struct optional {
char *o_var;
char *o_init;
{
int i;
+ the_env_defined = 0;
poolp = pool;
function = NULL;
function_symbol = "";
int simple_varargs;
put_lineno();
+ the_env_defined = 1;
fprintf(out, "\tconst cl_env_ptr the_env = ecl_process_env();\n");
for (i = 0; i < nopt; i++) {
put_lineno();
int i, t;
t = tab_save+1;
+
+ fprintf(out, "{\n");
+ if (!the_env_defined) {
+ put_tabs(t);
+ fprintf(out, "const cl_env_ptr the_env = ecl_process_env();\n");
+ }
if (nres == 0) {
- fprintf(out, "return0();");
- } else if (nres == 1) {
- fprintf(out, "return1(%s);", result[0]);
+ fprintf(out, "the_env->nvalues = 0; return Cnil;\n");
} else {
- fprintf(out, "{\n");
put_tabs(t);
for (i = 0; i < nres; i++) {
put_tabs(t);
}
put_tabs(t);
fprintf(out, "return __value0;\n");
- put_tabs(tab_save);
- fprintf(out, "}\n");
}
+ put_tabs(tab_save);
+ fprintf(out, "}\n");
}
int