We now get lots of compile time output like:
```bash
In file included from test/fuzz/addition_overflow.cpp:7:
./test/fuzz/util.h: In member function 'virtual SOCKET FuzzedSock::Get() const':
./test/fuzz/util.h:563:5: warning: no return statement in function returning non-void [-Wreturn-type]
  563 |     }
      |     ^
./test/fuzz/util.h: In member function 'virtual SOCKET FuzzedSock::Release()':
./test/fuzz/util.h:568:5: warning: no return statement in function returning non-void [-Wreturn-type]
  568 |     }
      |     ^
...
```
anywhere `test/fuzz/util.h` is included. Would be great to not have build logs filled with this spam.

This was all present in the CI. i.e https://cirrus-ci.com/task/5500626558779392?command=ci#L4283. 

cc @practicalswift @vasild 
                READ_FROM_STREAM_CASE(uint16_t),
                READ_FROM_STREAM_CASE(int32_t),
                READ_FROM_STREAM_CASE(uint32_t),
                READ_FROM_STREAM_CASE(int64_t),
                READ_FROM_STREAM_CASE(uint64_t),
                READ_FROM_STREAM_CASE(float),
                READ_FROM_STREAM_CASE(double),
                READ_FROM_STREAM_CASE(std::string),
                READ_FROM_STREAM_CASE(std::vector<char>));
        } catch (const std::ios_base::failure&) {
            break;
        }
    }
}
class FuzzedSock : public Sock
{
    FuzzedDataProvider& m_fuzzed_data_provider;
public:
    explicit FuzzedSock(FuzzedDataProvider& fuzzed_data_provider) : m_fuzzed_data_provider{fuzzed_data_provider}
    {
    }
    ~FuzzedSock() override
    {
    }
    SOCKET Get() const override
    {
        assert(false && "Not implemented yet.");
    }
    SOCKET Release() override
    {
        assert(false && "Not implemented yet.");
    }
    void Reset() override
    {
        assert(false && "Not implemented yet.");
    }
    ssize_t Send(const void* data, size_t len, int flags) const override
    {
        constexpr std::array send_errnos{
            EACCES,
            EAGAIN,
            EALREADY,
            EBADF,
            ECONNRESET,
            EDESTADDRREQ,
            EFAULT,
            EINTR,
            EINVAL,
            EISCONN,
            EMSGSIZE,
            ENOBUFS,
            ENOMEM,
            ENOTCONN,
            ENOTSOCK,
            EOPNOTSUPP,
            EPIPE,
            EWOULDBLOCK,
        };
        if (m_fuzzed_data_provider.ConsumeBool()) {
            return len;
        }
        const ssize_t r = m_fuzzed_data_provider.ConsumeIntegralInRange<ssize_t>(-1, len);
        if (r == -1) {
            SetFuzzedErrNo(m_fuzzed_data_provider, send_errnos);
        }
        return r;
    }
    ssize_t Recv(void* buf, size_t len, int flags) const override
    {
        constexpr std::array recv_errnos{
           