std::result_of is deprecated in C++17 and removed in C++20. std::invoke_result is added in C++17. Upstream libc++ has started removing the declaration of std::result_of when a new-enough C++ dialect is selected, so switch to the supported type. Bug: http://b/175635923 Test: treehugger Change-Id: Ie2db3e092b4300e20858097ac4e88ebaedc7ae07