You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "David Li (Jira)" <ji...@apache.org> on 2021/07/26 14:02:00 UTC
[jira] [Updated] (ARROW-13444) [C++] C++20 compatibility by
updating std::result_of to std::invoke_result
[ https://issues.apache.org/jira/browse/ARROW-13444?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
David Li updated ARROW-13444:
-----------------------------
Summary: [C++] C++20 compatibility by updating std::result_of to std::invoke_result (was: C++20 compatibility by updating std::result_of to std::invoke_result)
> [C++] 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
> Priority: Major
>
> 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)