**Describe the bug**
ClickHouse is unable to detect syntax error in expression: `SELECT if(CAST(NULL), '2.55', NULL) AS x`, which leads to a failure.

**How to reproduce**
* Reproduces in 20.7, 20.8 version of ClickHouse
* Queries to run that lead to unexpected result

**Expected behavior**
A clear message, indicating there is a syntax error in the above expression (CAST(NULL) is not a valid logical expression).

**Error message and/or stacktrace**
The original AST-fuzzer report - https://clickhouse-test-reports.s3.yandex.net/12550/48333b29f619490fd1df50230301596e44e2af45/fuzzer/fuzzer.log#fail1

Server error log - https://clickhouse-test-reports.s3.yandex.net/12550/48333b29f619490fd1df50230301596e44e2af45/fuzzer/server.log
{
            ASTPtr replace_ast = condition ? then_expr : else_expr;
            ASTPtr child_copy = child;
            String replace_alias = replace_ast->tryGetAlias();
            String if_alias = child->tryGetAlias();
            if (replace_alias.empty())
            {
                replace_ast->setAlias(if_alias);
                child = replace_ast;
            }
            else
            {
                
                
                
                ASTPtr replace_ast_deep_copy = replace_ast->clone();
                replace_ast_deep_copy->setAlias(if_alias);
                child = replace_ast_deep_copy;
            }
            if (!if_alias.empty())
            {
                auto alias_it = aliases.find(if_alias);
                if (alias_it != aliases.end() && alias_it->second.get() == child_copy.get())
                    alias_it->second = child;
            }
        }
    }
}
}