if (defaultExpr == null)
return env.error("expected default expression");
else if (arg.isReference())
map.put(arg.getName(), new EnvVarImpl(defaultExpr.evalVar(env).toVar()));
else {
map.put(arg.getName(), new EnvVarImpl(defaultExpr.eval(env).toLocalVar()));
}
}
Map<StringValue,EnvVar> oldMap = env.pushEnv(map);
Value []oldArgs = env.setFunctionArgs(args);