21.11.4.14
```
create table test (x String) Engine=StripeLog
select if(toUInt8(0), y, 42) from test
```

Throws exception `DB::Exception: Missing columns: 'y'`
Excpecting 42
btw `select if(0, y, 42) from test` works fine

#include <Common/typeid_cast.h>
#include <Parsers/ASTLiteral.h>
#include <Parsers/ASTFunction.h>
#include <Parsers/ASTHelpers.h>
#include <Parsers/ASTExpressionList.h>
#include <Interpreters/OptimizeIfWithConstantConditionVisitor.h>
#include <IO/WriteHelpers.h>
namespace DB
{
namespace ErrorCodes
{
    extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH;
}
static bool tryExtractConstValueFromCondition(const ASTPtr & condition, bool & value)