https://bugs.llvm.org/show_bug.cgi?id=41591

            Bug ID: 41591
           Summary: LWG 3062 Unnecessary decay_t in is_execution_policy_v
                    should be remove_cvref_t
           Product: parallel STL
           Version: unspecified
          Hardware: All
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: New
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]

https://cplusplus.github.io/LWG/issue3062 says to replace std::decay with
std::remove_cvref, which means in the __enable_if_execution_policy helper in
pstl/execution_defs.h:

namespace __internal
{
template <class ExecPolicy, class T>
using __enable_if_execution_policy =
    typename std::enable_if<__pstl::execution::is_execution_policy<typename
std::remove_reference<ExecPolicy>::type>::value,
                            T>::type;
} // namespace __internal


As remove_cvref is only available since C++2a it might have to be typename
remove_cv<typename remove_reference<ExecPolicy>::type>::type instead, but that
should still be more efficient to compile than std::decay.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to