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

            Bug ID: 83395
           Summary: is_invocable_r fails for cv-qualified void return type
           Product: gcc
           Version: 8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: kaballo86 at hotmail dot com
  Target Milestone: ---

`std::is_invocable_r` gives wrong results when used with a cv-qualified void
return type:

    static_assert(std::is_invocable_r<void, int(*)()>::value); // holds
    static_assert(std::is_invocable_r<void const, int(*)()>::value); // fires
    static_assert(std::is_invocable_r<void volatile, int(*)()>::value); //
fires
    static_assert(std::is_invocable_r<void const volatile, int(*)()>::value);
// fires

Reply via email to