Lines Matching defs:program
31 * allocate a new expression program environment
37 register Expr_t* program;
41 if (!(program = newof(0, Expr_t, 1, 0)))
43 program->symdisc.key = offsetof(Exid_t, name);
45 if (!(program->symbols = dtopen(&program->symdisc, Dtset)) ||
46 !(program->tmp = sfstropen()) ||
47 !(program->vm = (debug ? vmopen(Vmdcsbrk, Vmdebug, VM_DBCHECK|VM_DBABORT) : vmopen(Vmdcheap, Vmbest, 0))) ||
48 !(program->ve = (debug ? vmopen(Vmdcsbrk, Vmdebug, VM_DBCHECK|VM_DBABORT) : vmopen(Vmdcheap, Vmbest, 0))))
50 exclose(program, 1);
53 program->id = "libexpr:expr";
54 program->disc = disc;
55 setcontext(program);
56 program->file[0] = sfstdin;
57 program->file[1] = sfstdout;
58 program->file[2] = sfstderr;
59 strcpy(program->main.name, "main");
60 program->main.lex = PROCEDURE;
61 program->main.index = PROCEDURE;
62 dtinsert(program->symbols, &program->main);
65 dtinsert(program->symbols, sym);
68 dtinsert(program->symbols, sym);
69 return program;