### Description

`FROM test | eval x1 = pow(emp_no, 1), x2 = pow(x1, 1), x3 = pow(x2, 2)`

or

`FROM test | eval x1 = substring(ip1, 3), x2 = substring(x1, 2), x3 = substring(x2, 2)`

or

`FROM test | eval x1 = concat(ip1, ip2), x2 = concat(x1, "--"), x3 = concat(x2, "**")`

will fail with 

```
                "type": "verification_exception",
                "reason": "Found 1 problem\nline 1:65: Unknown column [x2], did you mean [x1]?"
```

Spawned from https://github.com/elastic/elasticsearch/issues/99472
x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/analysis/Analyzer.java
@Override
        public LogicalPlan apply(LogicalPlan logicalPlan, AnalyzerContext context) {
            return new Limit(
                Source.EMPTY,
                new Literal(Source.EMPTY, context.configuration().resultTruncationMaxSize(), DataTypes.INTEGER),
                logicalPlan
            );
        }
    }
    private static class PromoteStringsInDateComparisons extends Rule<LogicalPlan, LogicalPlan> {
        @Override
        public LogicalPlan apply(LogicalPlan plan) {
            return plan.transformExpressionsUp(BinaryComparison.class, PromoteStringsInDateComparisons::promote);
        }
        private static Expression promote(BinaryComparison cmp) {
            if (cmp.resolved() == false) {
                return cmp;
            }
            var left = cmp.left();
            var right = cmp.right();
            boolean modified = false;
            if (left.dataType() == DATETIME) {
                if (right.dataType() == KEYWORD && right.foldable()) {
                    right = stringToDate(right);
                    modified = true;
                }
            } else {