```
CREATE TABLE a
(
    `number` UInt64,
    `x` MATERIALIZED x
)
ENGINE = MergeTree
ORDER BY number;
-- that should fail!

insert into a values (1);
Received exception from server (version 21.7.1):
Code: 47. DB::Exception: Received from localhost:9000. DB::Exception: Missing columns: 'x' while processing query: 'CAST(x, 'UInt8') AS x', required columns: 'x' 'x'. 
```
return;
        }
        
        size_t first_pos = 0;
        if (func_node->name == "lambda")
            first_pos = 1;
        if (func_node->arguments)
        {
            auto & func_children = func_node->arguments->children;
            for (size_t i = first_pos; i < func_children.size(); ++i)
            {
                auto & child = func_children[i];
                if (needVisitChild(child))
                    visit(child, data);
            }
        }
        if (func_node->window_definition)
        {
            visitChildren(func_node->window_definition.get(), data);
        }
    }
    else if (!node->as<ASTSelectQuery>())
    {
        for (auto & child : node->children)
            if (needVisitChild(child))
                visit(child, data);
    }
}
void QueryNormalizer::visit(ASTPtr & ast, Data & data)