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

Syntax error: failed at position 10 ('::')
```
auto exp_list = std::make_shared<ASTExpressionList>();
            ASTPtr elem;
            SubqueryFunctionType subquery_function_type = SubqueryFunctionType::NONE;
            if (allow_any_all_operators && ParserKeyword("ANY").ignore(pos, expected))
                subquery_function_type = SubqueryFunctionType::ANY;
            else if (allow_any_all_operators && ParserKeyword("ALL").ignore(pos, expected))
                subquery_function_type = SubqueryFunctionType::ALL;
            else if (!(remaining_elem_parser ? remaining_elem_parser : first_elem_parser)->parse(pos, elem, expected))
                return false;
            if (subquery_function_type != SubqueryFunctionType::NONE && !ParserSubquery().parse(pos, elem, expected))
                return false;
            
            function->name = it[1];
            function->arguments = exp_list;
            function->children.push_back(exp_list);
            exp_list->children.push_back(node);
            exp_list->children.push_back(elem);
            if (allow_any_all_operators && subquery_function_type != SubqueryFunctionType::NONE && !modifyAST(function, subquery_function_type))
                return false;
            /** special exception for the access operator to the element of the array `x[y]`, which
              * contains the infix part '[' and the suffix ''] '(specified as' [')
              */
            if (0 == strcmp(it[0], "["))
            {
                if (pos->type != TokenType::ClosingSquareBracket)
                    return false;
                ++pos;
            }