private ComprehensionFor ParseCompFor() {
Eat(TokenKind.KeywordFor);
var start = GetStart();
bool trailingComma;
List<Expression> l = ParseTargetList(out trailingComma);
// expr list is something like:
// ()
// a
// a,b
// a,b,c
// we either want just () or a or we want (a,b) and (a,b,c)
// so we can do tupleExpr.EmitSet() or loneExpr.EmitSet()
Expression lhs = MakeTupleOrExpr(l, trailingComma);
Eat(TokenKind.KeywordIn);
Expression list = ParseOrTest();
ComprehensionFor ret = new ComprehensionFor(lhs, list);
ret.SetLoc(_globalParent, start, GetEnd());
return ret;
}