Implement P2655R3 common_reference_t Of reference_wrapper Should Be A Reference Type#3513
Conversation
strega-nil-ms
left a comment
There was a problem hiding this comment.
Minor questions, otherwise looks good!
tests/std/tests/VSO_0157762_feature_test_macros/test.compile.pass.cpp
Outdated
Show resolved
Hide resolved
tests/std/tests/VSO_0157762_feature_test_macros/test.compile.pass.cpp
Outdated
Show resolved
Hide resolved
|
Thanks, this looks solid, and I agree that implementing it in C++20 mode is reasonable! 😻 (This aligns with our usual rationale - if a paper deeply modifies an existing feature in a way that doesn't introduce new names, isn't likely to be source-breaking, is generally experienced as a strict improvement, and would be obnoxious to conditionally maintain, then implementing it retroactively is desirable. This is very much like the I've pushed some nitpicky cosmetic changes, nothing functional. FYI @strega-nil-ms as you already approved. |
|
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
|
Thanks for enhancing some of the STL's most intricate template machinery! ⚙️ ✨ 🚀 |
Fixes #3444.
I think the changes should be applied to C++20 mode as this documentation said P2655 is possibly a DR.
Also
convertible_tofrom<concepts>to<type_traits>for convenience,<type_traits>(towards STL: Update comments citing old Working Papers #182), and<type_traits>andVSO_0000000_type_traits/test.cpp.