Not a bug (the user will get exception) but triggers assertion in debug build. See:

https://clickhouse-test-reports.s3.yandex.net/13922/dd4b8b96635beecaaa40cd635f56818242b3f2a3/fuzzer/fuzzer.log#fail1
{
        return ceil(width - 1.0 / 8) * UNICODE_BAR_CHAR_SIZE;
    }
    //
    inline void render(double width, char * dst)
    {
        size_t floor_width = floor(width);
        for (size_t i = 0; i < floor_width; ++i)
        {
            memcpy(dst, "█", UNICODE_BAR_CHAR_SIZE);
            dst += UNICODE_BAR_CHAR_SIZE;
        }
        size_t remainder = floor((width - floor_width) * 8);
        if (remainder)
        {
            memcpy(dst, &"▏▎▍▌▋▋▊▉"[(remainder - 1) * UNICODE_BAR_CHAR_SIZE], UNICODE_BAR_CHAR_SIZE);
            dst += UNICODE_BAR_CHAR_SIZE;
        }
        *dst = 0;
    }
    inline std::string render(double width)
    {
        std::string res(getWidthInBytes(width), '\0');
        render(width, res.data());
        return res;
    }
}