```
milovidov-desktop :) SELECT -1::INT

Syntax error: failed at position 10 ('::')
```
break;
            ++count;
        }
    }
    ASTPtr elem;
    if (!elem_parser->parse(pos, elem, expected))
        return false;
    if (!*it)
        node = elem;
    else
    {
        for (size_t i = 0; i < count; ++i)
        {
            
            auto function = std::make_shared<ASTFunction>();
            
            auto exp_list = std::make_shared<ASTExpressionList>();
            function->name = it[1];
            function->arguments = exp_list;
            function->children.push_back(exp_list);
            if (node)
                exp_list->children.push_back(node);
            else
                exp_list->children.push_back(elem);
            node = function;
        }
    }
    return true;
}
bool ParserUnaryExpression::parseImpl(Pos & pos, ASTPtr & node, Expected & expected)