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). C++23 standardized std::ranges::zip_view. As part of the proposal, std::pair and std::tuple got const-qualified overloads of their swap-functions (the rationale can be found here). Should this change be somehow reflected in boost::core::invoke_swap?