From cebf57630acf4c2c3017e4937c6e1ff17218d13d Mon Sep 17 00:00:00 2001 From: Rangi Date: Tue, 25 Aug 2026 15:04:28 -0400 Subject: [PATCH] Prevent creation of a dangling reference to a temporary rvalue --- include/itertools.hpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/include/itertools.hpp b/include/itertools.hpp index c61d0f87..5c7177ca 100644 --- a/include/itertools.hpp +++ b/include/itertools.hpp @@ -30,8 +30,12 @@ auto end(ReversedIterable r) { return std::rend(r._iterable); } +// Prevent creation of a dangling reference to a temporary rvalue template -ReversedIterable reversed(IterableT &&_iterable) { +ReversedIterable reversed(IterableT &&_iterable) = delete; + +template +ReversedIterable reversed(IterableT &_iterable) { return {_iterable}; }