MemberAccessResolver.VisitNamedExpression: Shouldn't this return a new NamedExpression holding the resolved member access?
Write an integration test where this method is actually executed (currently, there doesn't seem to be one) and investigate.
Dynamic Linq (http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx) produces LambdaExpressions with empty parameter names, which clashes with the argument checks for identifier names (e.g., in MainFromClause). That's strange, but allowed, so we should support this.