Kouhei Sutou created ARROW-2405: ----------------------------------- Summary: [C++] <functional> is missing in plasma/client.h Key: ARROW-2405 URL: https://issues.apache.org/jira/browse/ARROW-2405 Project: Apache Arrow Issue Type: Bug Components: Plasma (C++) Affects Versions: 0.10.0 Reporter: Kouhei Sutou Assignee: Kouhei Sutou Fix For: 0.10.0
I got the following compile error: {noformat} In file included from /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:20:0: /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:363:32: error: ‘function’ in namespace ‘std’ does not name a template type const std::function<std::shared_ptr<Buffer>( ^~~~~~~~ /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:363:40: error: expected ‘,’ or ‘...’ before ‘<’ token const std::function<std::shared_ptr<Buffer>( ^ /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:276:8: error: prototype for ‘arrow::Status plasma::PlasmaClient::GetBuffers(const ObjectID*, int64_t, int64_t, const std::function<std::shared_ptr<arrow::Buffer>(const plasma::UniqueID&, const std::shared_ptr<arrow::Buffer>&)>&, plasma::ObjectBuffer*)’ does not match any in class ‘plasma::PlasmaClient’ Status PlasmaClient::GetBuffers( ^~~~~~~~~~~~ In file included from /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:20:0: /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:362:10: error: candidate is: arrow::Status plasma::PlasmaClient::GetBuffers(const ObjectID*, int64_t, int64_t, int) Status GetBuffers(const ObjectID* object_ids, int64_t num_objects, int64_t timeout_ms, ^~~~~~~~~~ /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc: In member function ‘arrow::Status plasma::PlasmaClient::Get(const std::vector<plasma::UniqueID>&, int64_t, std::vector<plasma::ObjectBuffer>*)’: /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:410:85: error: no matching function for call to ‘plasma::PlasmaClient::GetBuffers(const value_type*, const size_t&, int64_t&, const plasma::PlasmaClient::Get(const std::vector<plasma::UniqueID>&, int64_t, std::vector<plasma::ObjectBuffer>*)::<lambda(const ObjectID&, const std::shared_ptr<arrow::Buffer>&)>&, __gnu_cxx::__alloc_traits<std::allocator<plasma::ObjectBuffer> >::value_type*)’ return GetBuffers(&object_ids[0], num_objects, timeout_ms, wrap_buffer, &(*out)[0]); ^ In file included from /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:20:0: /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:362:10: note: candidate: arrow::Status plasma::PlasmaClient::GetBuffers(const ObjectID*, int64_t, int64_t, int) Status GetBuffers(const ObjectID* object_ids, int64_t num_objects, int64_t timeout_ms, ^~~~~~~~~~ /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:362:10: note: candidate expects 4 arguments, 5 provided /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc: In member function ‘arrow::Status plasma::PlasmaClient::Get(const ObjectID*, int64_t, int64_t, plasma::ObjectBuffer*)’: /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:417:74: error: no matching function for call to ‘plasma::PlasmaClient::GetBuffers(const ObjectID*&, int64_t&, int64_t&, const plasma::PlasmaClient::Get(const ObjectID*, int64_t, int64_t, plasma::ObjectBuffer*)::<lambda(const ObjectID&, const std::shared_ptr<arrow::Buffer>&)>&, plasma::ObjectBuffer*&)’ return GetBuffers(object_ids, num_objects, timeout_ms, wrap_buffer, out); ^ In file included from /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.cc:20:0: /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:362:10: note: candidate: arrow::Status plasma::PlasmaClient::GetBuffers(const ObjectID*, int64_t, int64_t, int) Status GetBuffers(const ObjectID* object_ids, int64_t num_objects, int64_t timeout_ms, ^~~~~~~~~~ /home/kou/work/cpp/arrow.kou/cpp/src/plasma/client.h:362:10: note: candidate expects 4 arguments, 5 provided {noformat} I don't know why it's not occurred on Travis CI. -- This message was sent by Atlassian JIRA (v7.6.3#76005)