lidavidm commented on pull request #12609: URL: https://github.com/apache/arrow/pull/12609#issuecomment-1072777710
It seems the second one is because the callback to wrap has no default constructor, so in turn that prevents Wrapstruct from being default-constructed. I guess you could use std::function and type-erase it…at the cost of having to jump through that wrapper. From looking around it seems you could also make it a parameter, then use std::bind to pass it (see [this SO question](https://stackoverflow.com/questions/8640393/move-capture-in-lambda), for instance) For the first one…I'm not too sure off the top of my head. It seems you may have to call it as `std::move(...)()`? https://github.com/apache/arrow/blob/dac4c0a3219699fc95f4e659cbe78c8527f3b938/cpp/src/arrow/util/future.h#L518 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
