ExpTy transVar(Absyn.SimpleVar v, boolean lhs) { Entry x = (Entry) env.venv.get(v.name); if (x instanceof VarEntry) { VarEntry ent = (VarEntry) x; if (lhs && ent instanceof LoopVarEntry) error(v.pos, "assignment to loop index"); return new ExpTy(translate.SimpleVar(ent.access, level), ent.ty); } error(v.pos, "undeclared variable: " + v.name); return new ExpTy(translate.Error(), VOID); }