[ 
https://issues.apache.org/jira/browse/ARROW-2405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16428299#comment-16428299
 ] 

ASF GitHub Bot commented on ARROW-2405:
---------------------------------------

xhochy commented on issue #1844: ARROW-2405: [C++] <function> is required for 
std::function
URL: https://github.com/apache/arrow/pull/1844#issuecomment-379250668
 
 
   This is probably because some compiler versions import it via a different 
path. I don't think this is the first PR of this kind.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> [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
>            Priority: Minor
>              Labels: pull-request-available
>             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)

Reply via email to