Prevent creation of a dangling reference to a temporary rvalue

This commit is contained in:
Rangi
2026-08-25 15:04:28 -04:00
parent eb2b7c1842
commit cebf57630a
+5 -1
View File
@@ -30,8 +30,12 @@ auto end(ReversedIterable<IterableT> r) {
return std::rend(r._iterable);
}
// Prevent creation of a dangling reference to a temporary rvalue
template<typename IterableT>
ReversedIterable<IterableT> reversed(IterableT &&_iterable) {
ReversedIterable<IterableT> reversed(IterableT &&_iterable) = delete;
template<typename IterableT>
ReversedIterable<IterableT> reversed(IterableT &_iterable) {
return {_iterable};
}