https://github.com/bitcoin/bitcoin/blob/68f3c7eb080e461cfeac37f8db7034fe507241d0/src/prevector.h#L152-L158

I'm opening an issue as its fix is too tiny to become a pull request.

Can be solved by renaming the struct to
```c
     struct indirect_contents { 
         size_type capacity; 
         char* indirect; 
     }; 
```
{
    int64_t start = GetTimeMicros();
    std::map<uint256, CAmount> mapDeltas;
    std::vector<TxMempoolInfo> vinfo;
    std::set<uint256> unbroadcast_txids;
    static Mutex dump_mutex;
    LOCK(dump_mutex);
    {
        LOCK(pool.cs);
        for (const auto &i : pool.mapDeltas) {
            mapDeltas[i.first] = i.second;
        }
        vinfo = pool.infoAll();
        unbroadcast_txids = pool.GetUnbroadcastTxs();
    }
    int64_t mid = GetTimeMicros();
    try {
        FILE* filestr = fsbridge::fopen(GetDataDir() / "mempool.dat.new", "wb");
        if (!filestr) {
            return false;
        }
        CAutoFile file(filestr, SER_DISK, CLIENT_VERSION);
        uint64_t version = MEMPOOL_DUMP_VERSION;
        file << version;
        file << (uint64_t)vinfo.size();
        for (const auto& i : vinfo) {
            file << *(i.tx);
            file << int64_t{count_seconds(i.m_time)};
            file << int64_t{i.nFeeDelta};