Anders Wind created ARROW-13444: ----------------------------------- Summary: C++20 compatibility by updating std::result_of to std::invoke_result Key: ARROW-13444 URL: https://issues.apache.org/jira/browse/ARROW-13444 Project: Apache Arrow Issue Type: Wish Components: C++ Affects Versions: 4.0.1 Reporter: Anders Wind
There are currently 5 header files which uses {{std::result_of}}. As specified here [https://en.cppreference.com/w/cpp/types/result_of,] {{std::result_of}} got deprecated in c++17 and removed in c++20. Because of this, its not possible to include the c++ arrow headers in a project using c++20 without getting compilation errors. To solve this, cppreference specifies how {{std::invoke_result}} can be used instead of {{std::result_of}}. Unfortunately {{std::invoke_result}} was only added in c++17 and therefore I expect that solving this will require some macro work, to keep c++14 and lower support. This is the first time I post an issue and I hope I have followed the rules. -- This message was sent by Atlassian Jira (v8.3.4#803005)