boostorg / boostorg/core

Use `boost::core::invoke_swap` with a `const T&`

Open
#155 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
156
Forks
116
PR merge metrics
No merged PRs in 30d

Description

Hi, this is rather an inquiry than an actual issue.
`boost::core::invoke_swap` only participates in overload resolution, when the type it gets called with is not const qualified ([invoke_swap.hpp#L81](https://github.com/boostorg/core/blob/develop/include/boost/core/invoke_swap.hpp#L81)). C++23 standardized [std::ranges::zip_view](https://wg21.link/p2321). As part of the proposal, `std::pair` and `std::tuple` got const-qualified overloads of their `swap`-functions (the rationale can be found [here](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p2321r2.html#proxy-reference-changes)). Should this change be somehow reflected in `boost::core::invoke_swap`?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.