Almost, but not quite. It should probably look like this:

    using std::swap;
    swap(pimpl_, other.pimpl_);
    request_storage_base::swap(other);