public void Resolve(ResolveContext ec)
{
if (Expr == EmptyExpression.Null)
{
return;
}
using (ec.With(ResolveContext.Options.DoFlowAnalysis, true)) {
// Verify that the argument is readable
if (ArgType != AType.Out)
{
Expr = Expr.Resolve(ec);
}
// Verify that the argument is writeable
if (Expr != null && IsByRef)
{
Expr = Expr.ResolveLValue(ec, EmptyExpression.OutAccess);
}
if (Expr == null)
{
Expr = EmptyExpression.Null;
}
}
}