See if context s is nested within context p, meaning it p is reachable at runtime by walking the static links. If any of the intervening contexts are function literals, make sure they are delegates.
Look for references to variables in a scope enclosing the new function literal.
Convert expression into a delegate.
Implements conversion from expressions to delegates for lazy parameters.
Specification: Lazy Parameters