https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114394

--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jonathan Wakely <r...@gcc.gnu.org>:

https://gcc.gnu.org/g:31ef58b18da930b09ea0dfc1d6533c5ef97d8446

commit r14-9632-g31ef58b18da930b09ea0dfc1d6533c5ef97d8446
Author: Jonathan Wakely <jwak...@redhat.com>
Date:   Tue Mar 19 14:02:06 2024 +0000

    libstdc++: Replace std::result_of with __invoke_result_t [PR114394]

    Replace std::result_of with std::invoke_result, as specified in the
    standard since C++17, to avoid deprecated warnings for std::result_of.

    We don't have __invoke_result_t in C++11 mode, so add it as an alias
    template for __invoke_result<>::type (which is what std::result_of uses
    as its base class, so there's no change in functionality).

    This fixes warnings given by Clang 18.

    libstdc++-v3/ChangeLog:

            PR libstdc++/114394
            * include/std/functional (bind): Use __invoke_result_t instead
            of result_of::type.
            * include/std/type_traits (__invoke_result_t): New alias
            template.
            * testsuite/20_util/bind/ref_neg.cc: Adjust prune pattern.

Reply via email to