`SELECT bitShiftLeft(toInt256(-2), number)`

`shift left for negative lhsbers is underfined!`

See https://clickhouse-test-reports.s3.yandex.net/14525/44726c37c3003ec8112dbf32efa350bd595163b3/fuzzer/report.html#fail1
{
    *this = _impl::operator_minus(*this, 1);
    return *this;
}
template <size_t Bits, typename Signed>
constexpr wide_integer<Bits, Signed> wide_integer<Bits, Signed>::operator--(int) noexcept(is_same<Signed, unsigned>::value)
{
    auto tmp = *this;
    *this = _impl::operator_minus(*this, 1);
    return tmp;
}
template <size_t Bits, typename Signed>
constexpr wide_integer<Bits, Signed>::operator bool() const noexcept
{
    return !_impl::operator_eq(*this, 0);
}
template <size_t Bits, typename Signed>
template <class T, class>
constexpr wide_integer<Bits, Signed>::operator T() const noexcept
{
    static_assert(std::numeric_limits<T>::is_integer, "");
    T res = 0;
    for (size_t r_idx = 0; r_idx < _impl::arr_size && r_idx < sizeof(T); ++r_idx)
    {
        res |= (T(m_arr[_impl::little(r_idx)]) << (_impl::base_bits * r_idx));
    }
    return res;
}
template <size_t Bits, typename Signed>
constexpr wide_integer<Bits, Signed>::operator long double() const noexcept