Hi,

I'm trying to compile a src file with Ceph that has been upgrade to use more of the C++17 features, but it fails on a missing function:

/home/jenkins/workspace/ceph-master/src/mds/OpenFileTable.cc:349:26: error: no member named 'merge' in 'std::__1::map<std::__1::basic_string<char>, ceph::buffer::list, std::__1::less<std::__1::basic_string<char> >, std::__1::allocator<std::__1::pair<const std::__1::basic_string<char>, ceph::buffer::list> > >'
    ctl.journaled_update.merge(ctl.to_update);
    ~~~~~~~~~~~~~~~~~~~~ ^

The actual code looks like:
====
    ctl.journaled_update.merge(ctl.to_update);
//ctl.journaled_update.insert(ctl.to_update.begin(), ctl.to_update.end());

    // ctl.journaled_remove.merge(ctl.to_remove);
ctl.journaled_remove.insert(ctl.to_remove.begin(), ctl.to_remove.end());
====
The first "merge" fails, but the second (old code) works.

It does compile on Linux/GCC, so probably there is a wrong/missing include, given the error.
But which one???

included are:
#include <iosfwd>
#include <list>
#include <map>
#include <set>
#include <string>
#include <string_view>

Suggestions?

Thanx,
--WjW


_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain
To unsubscribe, send any mail to "[email protected]"

Reply via email to