Currently, when a QueryModel expects a result type of IQueryable<T> (because the original queryable's Expression type is IQueryable<T>), re-linq based backends must take care to always provide item expressions (e.g., the items returned by the SelectClause) of type T as well. When they provide a type derived from T, an ArgumentTypeException is thrown by StreamedSequenceInfo's ctor (via QueryModel.GetOutputDataInfo()).
Change that to support all types assignable to T in the item expressions.
Even with an assignable item expression, StreamedSequenceInfo.ExecuteQueryModel (and MakeClosedGenericExecuteMethod) should still use T as the result item type.